version: '3.8' services: # NOFX Trading Backend nofx: build: context: . dockerfile: Dockerfile container_name: nofx-trading restart: unless-stopped ports: - "${NOFX_BACKEND_PORT:-8080}:8080" volumes: - ./config.json:/app/config.json:ro - ./decision_logs:/app/decision_logs - /etc/localtime:/etc/localtime:ro # 同步主机时间 environment: - TZ=${NOFX_TIMEZONE:-Asia/Shanghai} # 使用中国时区 networks: - nofx-network healthcheck: test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8080/health"] interval: 30s timeout: 10s retries: 3 start_period: 60s # Frontend (Nginx) nofx-frontend: image: nginx:alpine container_name: nofx-frontend restart: unless-stopped ports: - "${NOFX_FRONTEND_PORT:-3000}:80" volumes: - ./web/dist:/usr/share/nginx/html:ro - ./nginx.conf:/etc/nginx/conf.d/default.conf:ro networks: - nofx-network depends_on: - nofx networks: nofx-network: driver: bridge