2026-06-10 15:37:20 +08:00
|
|
|
x-logging: &default-logging
|
|
|
|
|
driver: json-file
|
|
|
|
|
options:
|
|
|
|
|
max-size: "10m"
|
|
|
|
|
max-file: "5"
|
2026-03-17 14:20:08 +08:00
|
|
|
|
|
|
|
|
services:
|
|
|
|
|
backend:
|
|
|
|
|
build:
|
|
|
|
|
context: ./backend
|
|
|
|
|
dockerfile: Dockerfile
|
2026-03-20 09:31:24 +08:00
|
|
|
container_name: dashboard-backend
|
2026-06-10 15:37:20 +08:00
|
|
|
env_file:
|
|
|
|
|
- .env
|
2026-03-17 14:20:08 +08:00
|
|
|
environment:
|
2026-06-10 15:37:20 +08:00
|
|
|
# 容器内固定 8000,与 nginx proxy_pass 和 ports 映射一致
|
2026-06-10 10:53:51 +08:00
|
|
|
- PORT=8000
|
2026-06-10 15:37:20 +08:00
|
|
|
- APP_ENV=${APP_ENV:-production}
|
2026-03-17 14:20:08 +08:00
|
|
|
ports:
|
|
|
|
|
- "8083:8000"
|
|
|
|
|
restart: unless-stopped
|
2026-06-10 15:37:20 +08:00
|
|
|
logging: *default-logging
|
2026-03-17 14:20:08 +08:00
|
|
|
networks:
|
|
|
|
|
- audio-network
|
2026-07-09 10:33:19 +08:00
|
|
|
extra_hosts:
|
|
|
|
|
- "host.docker.internal:host-gateway"
|
2026-03-20 09:31:24 +08:00
|
|
|
volumes:
|
2026-06-10 15:37:20 +08:00
|
|
|
- /data/projects/source:/data/projects/source
|
2026-03-17 14:20:08 +08:00
|
|
|
|
|
|
|
|
frontend:
|
2026-03-20 09:31:24 +08:00
|
|
|
image: nginx:alpine
|
|
|
|
|
container_name: dashboard-frontend
|
2026-03-17 14:20:08 +08:00
|
|
|
ports:
|
|
|
|
|
- "8082:80"
|
2026-03-20 09:31:24 +08:00
|
|
|
volumes:
|
|
|
|
|
- /data/project/dashboard/frontend/dist:/usr/share/nginx/html:ro
|
|
|
|
|
- /data/project/dashboard/frontend/nginx.conf:/etc/nginx/conf.d/default.conf:ro
|
2026-03-17 14:20:08 +08:00
|
|
|
depends_on:
|
|
|
|
|
- backend
|
|
|
|
|
restart: unless-stopped
|
2026-06-10 15:37:20 +08:00
|
|
|
logging: *default-logging
|
2026-03-17 14:20:08 +08:00
|
|
|
networks:
|
|
|
|
|
- audio-network
|
|
|
|
|
|
|
|
|
|
networks:
|
|
|
|
|
audio-network:
|
|
|
|
|
driver: bridge
|