50 lines
1.2 KiB
YAML
50 lines
1.2 KiB
YAML
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
|
|
extra_hosts:
|
|
- "host.docker.internal:host-gateway"
|
|
volumes:
|
|
- /data/projects/source:/data/projects/source
|
|
# 素材库上传目录:容器内 /app/uploads ↔ 宿主机 /data/project/dashboard/backend/uploads
|
|
- /data/project/dashboard/frontend/dist/uploads:/app/uploads
|
|
|
|
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
|