Files
nofx/docker-compose.yml
T
Yinghao Fan 2f577d9f01 Enhance Docker setup: Add shared volume for frontend files and update Dockerfile for dependencies
Changes:
- Updated `docker-compose.yml` to include a new shared volume `frontend-dist` for frontend files.
- Modified the `nofx` service command to copy frontend files to the shared volume.
- Updated `Dockerfile` to use Go 1.25 and added necessary build dependencies for TA-Lib installation.
These changes improve the Docker environment by facilitating shared access to frontend assets and ensuring the build process is up-to-date with the latest Go version.
2025-10-29 23:34:21 +08:00

51 lines
1.2 KiB
YAML

version: '3.8'
services:
# NOFX Trading Backend
nofx:
build:
context: .
dockerfile: Dockerfile
container_name: nofx-trading
restart: unless-stopped
ports:
- "8080:8080"
volumes:
- ./config.json:/app/config.json:ro
- ./decision_logs:/app/decision_logs
- /etc/localtime:/etc/localtime:ro # 同步主机时间
- frontend-dist:/app/web/dist-shared:rw # 共享前端文件
environment:
- TZ=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
command: sh -c "cp -r /app/web/dist/* /app/web/dist-shared/ 2>/dev/null || true && exec ./nofx"
# Frontend (Nginx)
nofx-frontend:
image: nginx:alpine
container_name: nofx-frontend
restart: unless-stopped
ports:
- "3000:80"
volumes:
- frontend-dist:/usr/share/nginx/html:ro
- ./nginx.conf:/etc/nginx/conf.d/default.conf:ro
networks:
- nofx-network
depends_on:
- nofx
volumes:
frontend-dist:
networks:
nofx-network:
driver: bridge