services: backend: build: context: ./backend dockerfile: Dockerfile environment: - OPENROUTER_API_KEY=${OPENROUTER_API_KEY} - JWT_SECRET=${JWT_SECRET} - APP_URL=${APP_URL:-https://ai.allucanget.biz} - APP_NAME=${APP_NAME:-AI Allucanget} - CORS_ORIGINS=${CORS_ORIGINS:-https://ai.allucanget.biz} volumes: - app-data:/app/data networks: - app-network healthcheck: test: [ "CMD", "curl", "-f", "http://localhost:12000/health" ] interval: 30s timeout: 10s retries: 3 start_period: 5s expose: - "12000" frontend: build: context: ./frontend dockerfile: Dockerfile environment: - FLASK_SECRET_KEY=${FLASK_SECRET_KEY} - BACKEND_URL=${BACKEND_URL:-http://backend:12000} depends_on: backend: condition: service_healthy networks: - app-network expose: - "12001" nginx: image: nginx:alpine volumes: - ./nginx/docker-compose.conf:/etc/nginx/conf.d/default.conf:ro depends_on: - backend - frontend networks: - app-network expose: - "80" networks: app-network: driver: bridge volumes: app-data: