# Server (internal bind inside containers) HOST=0.0.0.0 BACKEND_INTERNAL_PORT=8080 FRONTEND_INTERNAL_PORT=80 # External ports on the host (docker compose publish) BACKEND_PORT=8080 FRONTEND_PORT=3080 VITE_DEV_PORT=5173 # OpenRouter OPENROUTER_API_KEY=sk-or-v1-your-key-here OPENROUTER_MODEL=deepseek/deepseek-chat OPENROUTER_BASE_URL=https://openrouter.ai/api/v1 # App DATABASE_URL=sqlite:///./data/assistant.db CORS_ORIGINS=http://localhost:5173,http://localhost:8080,http://localhost:3080 SYSTEM_PROMPT_PATH=./prompts/assistant.md # Taiga (on host :9000, nginx → taiga.grigowashere.ru) TAIGA_BASE_URL=http://host.docker.internal:9000 TAIGA_USERNAME=your_taiga_user TAIGA_PASSWORD=your_taiga_password TAIGA_PUBLIC_URL=https://taiga.grigowashere.ru # Gitea (on host :3000, nginx → git.grigowashere.ru) GITEA_BASE_URL=http://host.docker.internal:3000 GITEA_TOKEN=your_gitea_api_token GITEA_PUBLIC_URL=https://git.grigowashere.ru GITEA_WEBHOOK_SECRET=generate_a_random_secret # Gitea webhook URL (configure in repo settings): # http://127.0.0.1:8080/api/v1/webhooks/gitea REPOS_DIR=/data/repos # Vector DB (phase 3) QDRANT_PORT=6333 QDRANT_GRPC_PORT=6334