# Optional local overlay — NOT required for day-to-day use. # # Default workflow (host Postgres + loopback API ports) is in docker-compose.yml: # docker compose up -d --build # # Use this file only when you want --reload and bind-mounted source: # docker compose -f docker-compose.yml -f docker-compose.dev.yml up -d --build # # Do not set DB_HOST here. Keep PROD_ENV=false and DB_HOST=localhost in # backend/.env; db_setup rewrites localhost → host.docker.internal in Docker. services: backend-api: command: [ "uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000", "--reload", ] volumes: - ./backend:/app - ./app:/app/app - ${ATTACHMENTS_DIR:-./backend/inbox/decoded_attachments}:/app/inbox/decoded_attachments ats-engine: command: [ "uvicorn", "app.main:create_app", "--factory", "--host", "0.0.0.0", "--port", "8100", "--reload", ] volumes: - ./app:/srv/app frontend: ports: - "${FRONTEND_PORT:-5173}:80" taskiq-worker: volumes: - ./backend:/app - ./app:/app/app - ${ATTACHMENTS_DIR:-./backend/inbox/decoded_attachments}:/app/inbox/decoded_attachments taskiq-scheduler: volumes: - ./backend:/app - ./app:/app/app taskiq-cv-worker: volumes: - ./backend:/app - ./app:/app/app - ${ATTACHMENTS_DIR:-./backend/inbox/decoded_attachments}:/app/inbox/decoded_attachments taskiq-cv-scheduler: volumes: - ./backend:/app - ./app:/app/app taskiq-mailbox-sync-worker: volumes: - ./backend:/app - ./app:/app/app - ${ATTACHMENTS_DIR:-./backend/inbox/decoded_attachments}:/app/inbox/decoded_attachments taskiq-sheet-worker: volumes: - ./backend:/app - ./app:/app/app