Files
meeting-protocol-service/docker-compose.yml
T
Admin 3e15f643d6 fix: deployment — resolve dependency conflicts, add initial migration, CI/CD webhook
- Fix httpx/pydantic/redis version conflicts for litellm/aiogram/celery compatibility
- Add PYTHONPATH=/app to Dockerfile for alembic module resolution
- Skip Telegram webhook setup when URL is not HTTPS
- Fix FileUpload prop type mismatch in RecordingsPage
- Add alembic script.py.mako template and initial migration
- Configure docker-compose: port 8081, built frontend, no exposed internal ports
- Add deploy.sh and webhook-server.js for Gitea CI/CD auto-deploy

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 13:49:12 +05:00

81 lines
1.6 KiB
YAML

services:
app:
build: ./backend
env_file: .env
expose:
- "8000"
volumes:
- uploads:/app/uploads
- exports:/app/exports
depends_on:
db:
condition: service_healthy
redis:
condition: service_healthy
working_dir: /app
command: >
sh -c "alembic upgrade head && uvicorn app.main:app --host 0.0.0.0 --port 8000"
worker:
build: ./backend
env_file: .env
volumes:
- uploads:/app/uploads
- exports:/app/exports
depends_on:
db:
condition: service_healthy
redis:
condition: service_healthy
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: 1
capabilities: [gpu]
command: celery -A app.tasks.celery_app worker --loglevel=info --concurrency=2
beat:
build: ./backend
env_file: .env
depends_on:
redis:
condition: service_healthy
command: celery -A app.tasks.celery_app beat --loglevel=info
redis:
image: redis:7-alpine
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 5s
timeout: 3s
retries: 5
db:
image: postgres:16-alpine
env_file: .env
ports:
- "5433:5432"
volumes:
- pgdata:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $POSTGRES_USER -d $POSTGRES_DB"]
interval: 5s
timeout: 3s
retries: 5
frontend:
build: ./frontend
ports:
- "8081:80"
volumes:
- ./nginx/nginx.conf:/etc/nginx/conf.d/default.conf
depends_on:
- app
volumes:
pgdata:
uploads:
exports: