Files
drl_2/xuexiao/docker-compose.yml

67 lines
1.5 KiB
YAML
Raw Normal View History

2026-05-29 10:28:07 +08:00
version: '3.8'
services:
web:
build: .
restart: always
ports:
- "127.0.0.1:8000:8000"
volumes:
# 挂载日志和上传文件目录(持久化)
- ./shared/logs:/app/logs
- ./shared/uploads:/app/uploads
environment:
# 从 .env 文件读取环境变量
- MYSQL_HOST=mysql
- MYSQL_PORT=3306
- MYSQL_USER=${MYSQL_USER}
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
- MYSQL_DB=${MYSQL_DB}
- SECRET_KEY=${SECRET_KEY}
- UPLOAD_FOLDER=/app/uploads
- LOG_FOLDER=/app/logs
depends_on:
- mysql
networks:
- app-network
mysql:
image: mysql:8.0
restart: always
volumes:
# MySQL 数据持久化
- mysql_data:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
- MYSQL_DATABASE=${MYSQL_DB}
- MYSQL_USER=${MYSQL_USER}
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
ports:
- "127.0.0.1:3306:3306"
networks:
- app-network
nginx:
image: nginx:alpine
restart: always
ports:
- "80:80"
- "443:443"
volumes:
- ./nginx/conf.d:/etc/nginx/conf.d
- ./nginx/ssl:/etc/nginx/ssl
- ./shared/logs/nginx:/var/log/nginx
# 静态文件直接由 Nginx 处理
- ./static:/app/static
- ./shared/uploads:/app/uploads
depends_on:
- web
networks:
- app-network
volumes:
mysql_data:
networks:
app-network:
driver: bridge