# Production compose for server-infra deploy. No bundled Postgres — use shared # external DB via DATABASE_URL in .env (see .env.prod.example). # # Web runs on every app host (active/active). Start the dj-queue worker on # exactly ONE host via: # docker compose -f docker-compose.prod.yml --profile worker up -d # Worker also polls dispatch_due so scheduled campaigns/social posts fire. services: web: build: . restart: unless-stopped ports: - "${WEB_PORT:-8004}:8000" env_file: - .env worker: build: . restart: unless-stopped profiles: ["worker"] entrypoint: ["/worker-entrypoint.sh"] env_file: - .env