x-logging: &default-logging driver: json-file options: max-size: "10m" max-file: "5" services: backend: build: context: ./backend dockerfile: Dockerfile container_name: dashboard-backend env_file: - .env environment: # 容器内固定 8000,与 nginx proxy_pass 和 ports 映射一致 - PORT=8000 - APP_ENV=${APP_ENV:-production} ports: - "8083:8000" restart: unless-stopped logging: *default-logging networks: - audio-network volumes: - /data/projects/source:/data/projects/source frontend: image: nginx:alpine container_name: dashboard-frontend ports: - "8082:80" volumes: - /data/project/dashboard/frontend/dist:/usr/share/nginx/html:ro - /data/project/dashboard/frontend/nginx.conf:/etc/nginx/conf.d/default.conf:ro depends_on: - backend restart: unless-stopped logging: *default-logging networks: - audio-network networks: audio-network: driver: bridge