mirror of
https://github.com/fastapiadmin/FastapiAdmin.git
synced 2026-09-20 20:39:55 +00:00
110 lines
1.9 KiB
YAML
110 lines
1.9 KiB
YAML
version: "3.10.11"
|
|
|
|
# 应用服务
|
|
services:
|
|
# 前端服务
|
|
frontend:
|
|
container_name: frontend
|
|
build:
|
|
context: .
|
|
dockerfile: frontend/Dockerfile
|
|
ports:
|
|
- "80:80"
|
|
depends_on:
|
|
- backend
|
|
networks:
|
|
- app-network
|
|
|
|
# 后端服务
|
|
backend:
|
|
# 容器名称
|
|
container_name: backend
|
|
# 构建镜像
|
|
build:
|
|
context: .
|
|
dockerfile: build/Dockerfile
|
|
# 端口映射
|
|
ports:
|
|
- "8000:8000"
|
|
environment:
|
|
- MYSQL_HOST=mysql
|
|
- MYSQL_PORT=3306
|
|
- MYSQL_USER=root
|
|
- MYSQL_PASSWORD=123456
|
|
- MYSQL_DATABASE=fastapi_admin
|
|
- REDIS_HOST=redis
|
|
- REDIS_PORT=6379
|
|
- MONGODB_URL=mongodb://mongodb:27017/
|
|
depends_on:
|
|
- mysql
|
|
- redis
|
|
- mongodb
|
|
networks:
|
|
- app-network
|
|
restart: always
|
|
|
|
# 数据库服务
|
|
mysql:
|
|
container_name: mysql
|
|
image: mysql:8.0
|
|
environment:
|
|
- MYSQL_ROOT_PASSWORD=123456
|
|
- MYSQL_DATABASE=fastapi_admin
|
|
ports:
|
|
- "3306:3306"
|
|
volumes:
|
|
- mysql_data:/var/lib/mysql
|
|
networks:
|
|
- app-network
|
|
|
|
# redis服务
|
|
redis:
|
|
container_name: redis
|
|
image: redis:latest
|
|
ports:
|
|
- "6379:6379"
|
|
volumes:
|
|
- redis_data:/data
|
|
networks:
|
|
- app-network
|
|
|
|
# mongodb服务
|
|
mongodb:
|
|
container_name: mongodb
|
|
image: mongo:latest
|
|
ports:
|
|
- "27017:27017"
|
|
volumes:
|
|
- mongodb_data:/data/db
|
|
networks:
|
|
- app-network
|
|
|
|
# nginx服务
|
|
nginx:
|
|
container_name: nginx
|
|
restart: always
|
|
image: "nginx:latest"
|
|
ports:
|
|
- "5000:5000"
|
|
volumes:
|
|
- ./nginx:/etc/nginx/conf.d
|
|
networks:
|
|
- web_network
|
|
depends_on:
|
|
- flask_api
|
|
|
|
# 网络
|
|
networks:
|
|
db_network:
|
|
driver: bridge
|
|
web_network:
|
|
driver: bridge
|
|
app-network:
|
|
driver: bridge
|
|
|
|
# 文件挂载
|
|
volumes:
|
|
mysql_data:
|
|
redis_data:
|
|
mongodb_data:
|