version: '3.8' services: fred-ml: image: ghcr.io/eaname/fredml:latest ports: - "8000:8000" environment: - FRED_API_KEY=${FRED_API_KEY} - ENVIRONMENT=production - LOG_LEVEL=INFO volumes: - ./data:/app/data - ./logs:/app/logs depends_on: - redis - postgres networks: - fred-ml-network restart: unless-stopped redis: image: redis:7-alpine ports: - "6379:6379" volumes: - redis_data:/data networks: - fred-ml-network restart: unless-stopped postgres: image: postgres:15-alpine environment: POSTGRES_DB: fred_ml POSTGRES_USER: fred_user POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} ports: - "5432:5432" volumes: - postgres_data:/var/lib/postgresql/data networks: - fred-ml-network restart: unless-stopped nginx: image: nginx:alpine ports: - "80:80" - "443:443" volumes: - ./nginx.conf:/etc/nginx/nginx.conf depends_on: - fred-ml networks: - fred-ml-network restart: unless-stopped volumes: redis_data: postgres_data: networks: fred-ml-network: driver: bridge