version: '3.8' services: backend: build: context: ./repo dockerfile: Dockerfile.backend container_name: marketmanager-backend restart: unless-stopped ports: - "127.0.0.1:9200:8678" environment: - PORT=8678 - HOST=0.0.0.0 - ENV=production - FRONTEND_URL=https://chuckie.coppertone.tech - SESSION_SECRET=${SESSION_SECRET} - GOOGLE_CLIENT_ID=${GOOGLE_CLIENT_ID} - GOOGLE_CLIENT_SECRET=${GOOGLE_CLIENT_SECRET} - GOOGLE_REDIRECT_URL=${GOOGLE_REDIRECT_URL} - META_CLIENT_ID=${META_CLIENT_ID} - META_CLIENT_SECRET=${META_CLIENT_SECRET} - META_REDIRECT_URL=${META_REDIRECT_URL} - TIKTOK_CLIENT_KEY=${TIKTOK_CLIENT_KEY} - TIKTOK_CLIENT_SECRET=${TIKTOK_CLIENT_SECRET} - TIKTOK_REDIRECT_URL=${TIKTOK_REDIRECT_URL} - OPENAI_API_KEY=${OPENAI_API_KEY} - OPENAI_MODEL=${OPENAI_MODEL:-gpt-4-turbo-preview} - CANVA_CLIENT_ID=${CANVA_CLIENT_ID} - CANVA_CLIENT_SECRET=${CANVA_CLIENT_SECRET} - CANVA_WEBHOOK_SECRET=${CANVA_WEBHOOK_SECRET} - USER_CONFIG_DIR=/app/config/users - WORKFLOW_CONFIG_DIR=/app/config/workflows - TEMP_DIR=/app/tmp - LOG_LEVEL=${LOG_LEVEL:-info} - LOG_FORMAT=${LOG_FORMAT:-json} - STATIC_DIR=/app/dist volumes: - ./repo/config:/app/config - ./tmp:/app/tmp - ./logs:/app/logs healthcheck: test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8678/health"] interval: 30s timeout: 3s start_period: 10s retries: 3