Files
FastapiAdmin/docker-compose.yaml
T
zhangtao 6127f06632 refactor: 统一网络配置并添加MySQL连接重试逻辑
将docker-compose.yaml中的多个独立网络合并为单一网络`fastapi_vue3_admin_network`,简化网络配置。在`init_app.py`中添加MySQL连接重试逻辑,提高服务启动的稳定性。
2025-05-20 22:43:42 +08:00

77 lines
1.6 KiB
YAML

# 应用服务
services:
# 数据库服务
mysql:
container_name: mysql
image: mysql:8.0
restart: always
environment:
TZ: "Asia/Shanghai"
MYSQL_ROOT_PASSWORD: "123456"
MYSQL_DATABASE: "fastapi_vue3_admin"
ports:
- "3306:3306"
volumes:
- ./devops/mysql/data:/var/lib/mysql
- ./devops/mysql/conf:/etc/mysql/conf.d
- ./devops/mysql/logs:/logs
networks:
- fastapi_vue3_admin_network
# redis服务
redis:
container_name: redis
image: redis:6
restart: always
environment:
TZ: "Asia/Shanghai"
ports:
- "6379:6379"
volumes:
- ./devops/redis/conf/redis.conf:/etc/redis/redis.conf
- ./devops/redis/data:/data
networks:
- fastapi_vue3_admin_network
command: redis-server /etc/redis/redis.conf
# 后端服务
backend:
container_name: backend
build:
context: ./
dockerfile: ./devops/backend/Dockerfile
restart: always
environment:
TZ: "Asia/Shanghai"
ports:
- "8001:8001"
volumes:
- ./backend:/home
networks:
- fastapi_vue3_admin_network
depends_on:
- mysql
- redis
# 前端nginx服务
frontend:
container_name: nginx
image: "nginx:latest"
restart: always
environment:
TZ: "Asia/Shanghai"
ports:
- "80:80"
volumes:
- ./devops/nginx/nginx.conf:/etc/nginx/nginx.conf
- ./frontend/dist:/usr/share/nginx/html
networks:
- fastapi_vue3_admin_network
depends_on:
- backend
# 网络
networks:
fastapi_vue3_admin_network:
driver: bridge