Skip to main content

Local Deployment Guide

This guide covers deploying VerityNgn locally using Docker Compose for both development and testing.

Overview

Local deployment runs:
  • API Backend: Handles video processing and verification
  • Streamlit UI: User-friendly web interface
  • Shared Volumes: For data persistence

Prerequisites

Required

API Keys

You’ll need:
  1. Google Cloud Service Account with Vertex AI access
  2. Google Search API Key for evidence gathering
  3. Custom Search Engine (CSE) ID
See docs/guides/AUTHENTICATION.md for setup instructions.

Quick Start

1. Clone Repository

2. Configure Environment

Create .env file from the example:
Edit .env and add your credentials:

3. Add Service Account

Place your Google Cloud service account JSON file in the project root:

4. Start Services

This will:
  • Build the API and UI Docker images
  • Start both services
  • Create shared volumes for data persistence

5. Access Application

Usage

Submit a Video

  1. Open http://localhost:8501
  2. Navigate to ”🎬 Video Input” tab
  3. Enter a YouTube URL
  4. Click “Start Verification”
  5. Monitor progress in “⚙️ Processing” tab
  6. View results in ”📊 Reports” tab

View Reports

Reports are saved to:
  • Local directory: ./outputs/\{video_id\}/
  • Formats: HTML, JSON, Markdown
You can also access reports via API:

Common Commands

Start Services

View Logs

Stop Services

Rebuild Images

If you’ve made code changes:

Directory Structure

Configuration

Environment Variables

Key variables in .env:

Port Configuration

To change default ports, edit docker-compose.yml:

Troubleshooting

API Not Accessible

Problem: UI shows “API is not accessible” Solutions:
  1. Check if API container is running:
  2. Check API health:
  3. View API logs:
  4. Verify network connectivity:

Permission Errors

Problem: “Permission denied” when accessing files Solutions:
  1. Check file permissions:
  2. Fix permissions:
  3. Check Docker volume permissions:

Out of Memory

Problem: Container killed due to OOM Solutions:
  1. Increase Docker memory limit (Docker Desktop → Settings → Resources)
  2. Reduce token limits in .env:

Service Won’t Start

Problem: Container exits immediately Solutions:
  1. Check logs:
  2. Verify environment variables:
  3. Test service account:

Development Workflow

Hot Reloading

For development with live code updates:
  1. Create docker-compose.override.yml:
  2. Restart services:

Running Tests

Accessing Container Shell

Performance Tuning

Resource Limits

Edit docker-compose.yml:

Parallel Processing

For multiple videos:
(Note: Requires load balancer configuration)

Next Steps

Support


Last Updated: November 4, 2025
Version: 2.3.0