Files
ShiErFeng/shierfeng-fastapi-test/docker-compose.test.my.yml
T
2026-07-24 09:43:10 +08:00

77 lines
2.1 KiB
YAML

services:
# 前端服务
shierfeng-frontend:
build:
context: ../shierfeng-fastapi-frontend
dockerfile: Dockerfile
image: shierfeng-frontend:latest
container_name: shierfeng-frontend-test
ports:
- "80:80"
volumes:
- ../shierfeng-fastapi-frontend/bin/nginx.dockermy.conf:/etc/nginx/conf.d/default.conf
depends_on:
- shierfeng-backend-my
networks:
- shierfeng-network-test
# 后端服务(MySQL版本)
shierfeng-backend-my:
build:
context: ../shierfeng-fastapi-backend
dockerfile: Dockerfile.my
image: shierfeng-backend-my:latest
container_name: shierfeng-backend-my-test
ports:
- "9099:9099"
environment:
TRANSPORT_CRYPTO_ENABLED: "false"
TRANSPORT_CRYPTO_MODE: "off"
depends_on:
shierfeng-mysql:
condition: service_healthy
shierfeng-redis:
condition: service_healthy
networks:
- shierfeng-network-test
# MySQL服务
shierfeng-mysql:
image: mysql:8.0
container_name: shierfeng-mysql-test
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: shierfeng-fastapi
ports:
- "13307:3306"
volumes:
- ../shierfeng-fastapi-backend/sql/shierfeng-fastapi.sql:/docker-entrypoint-initdb.d/01-shierfeng-fastapi.sql
- ./disable_captcha.sql:/docker-entrypoint-initdb.d/02-disable-captcha.sql
command: --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci --skip-character-set-client-handshake=1
networks:
- shierfeng-network-test
healthcheck:
test: ["CMD", "bash", "-c", "mysqladmin ping -h localhost -u root -proot && mysql -h localhost -u root -proot -e 'SELECT 1'"]
interval: 5s
timeout: 10s
retries: 30
# Redis服务
shierfeng-redis:
image: redis:latest
container_name: shierfeng-redis-test
ports:
- "16380:6379"
networks:
- shierfeng-network-test
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 5s
timeout: 10s
retries: 30
# 网络配置
networks:
shierfeng-network-test:
name: shierfeng-network-test
driver: bridge