Some checks failed
Build and Push Docker Image / build (push) Has been cancelled
- Node.js/Express backend with TypeScript - SQLite database for users, sessions, and content metadata - Authentication with TOTP and WebAuthn MFA support - Admin user auto-created on first startup - User content gallery with view/delete functionality - RunPod API proxy (keeps API keys server-side) - Docker setup with CI/CD for Gitea registry 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
33 lines
1.1 KiB
YAML
33 lines
1.1 KiB
YAML
version: '3.8'
|
|
|
|
services:
|
|
frontend:
|
|
build: .
|
|
ports:
|
|
- "3000:3000"
|
|
environment:
|
|
- NODE_ENV=development
|
|
- SESSION_SECRET=${SESSION_SECRET:-dev-session-secret-change-in-production}
|
|
- ADMIN_USERNAME=${ADMIN_USERNAME:-admin}
|
|
- ADMIN_PASSWORD=${ADMIN_PASSWORD:-changeme123456}
|
|
- ADMIN_EMAIL=${ADMIN_EMAIL:-admin@localhost}
|
|
- RUNPOD_API_KEY=${RUNPOD_API_KEY:?RUNPOD_API_KEY is required}
|
|
- RUNPOD_ENDPOINT_ID=${RUNPOD_ENDPOINT_ID:?RUNPOD_ENDPOINT_ID is required}
|
|
- WEBAUTHN_RP_ID=${WEBAUTHN_RP_ID:-localhost}
|
|
- WEBAUTHN_RP_NAME=${WEBAUTHN_RP_NAME:-ComfyUI Video Generator}
|
|
- WEBAUTHN_ORIGIN=${WEBAUTHN_ORIGIN:-http://localhost:3000}
|
|
- ENCRYPTION_KEY=${ENCRYPTION_KEY:-0000000000000000000000000000000000000000000000000000000000000000}
|
|
- TRUST_PROXY=false
|
|
volumes:
|
|
- frontend-data:/app/data
|
|
restart: unless-stopped
|
|
healthcheck:
|
|
test: ["CMD", "wget", "-q", "--spider", "http://localhost:3000/health"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 10s
|
|
|
|
volumes:
|
|
frontend-data:
|