65 lines
1.4 KiB
YAML
65 lines
1.4 KiB
YAML
|
|
version: '3.8'
|
||
|
|
|
||
|
|
services:
|
||
|
|
# MySQL 数据库
|
||
|
|
mysql:
|
||
|
|
image: mysql:8.0
|
||
|
|
container_name: gamegroup-mysql
|
||
|
|
restart: always
|
||
|
|
ports:
|
||
|
|
- "3306:3306"
|
||
|
|
environment:
|
||
|
|
MYSQL_ROOT_PASSWORD: root
|
||
|
|
MYSQL_DATABASE: gamegroup
|
||
|
|
MYSQL_USER: gamegroup
|
||
|
|
MYSQL_PASSWORD: gamegroup123
|
||
|
|
TZ: Asia/Shanghai
|
||
|
|
volumes:
|
||
|
|
- mysql-data:/var/lib/mysql
|
||
|
|
- ./init.sql:/docker-entrypoint-initdb.d/init.sql
|
||
|
|
command:
|
||
|
|
--default-authentication-plugin=mysql_native_password
|
||
|
|
--character-set-server=utf8mb4
|
||
|
|
--collation-server=utf8mb4_unicode_ci
|
||
|
|
networks:
|
||
|
|
- gamegroup-network
|
||
|
|
|
||
|
|
# Redis 缓存
|
||
|
|
redis:
|
||
|
|
image: redis:7-alpine
|
||
|
|
container_name: gamegroup-redis
|
||
|
|
restart: always
|
||
|
|
ports:
|
||
|
|
- "6379:6379"
|
||
|
|
volumes:
|
||
|
|
- redis-data:/data
|
||
|
|
networks:
|
||
|
|
- gamegroup-network
|
||
|
|
|
||
|
|
# NestJS 应用 (可选,用于生产环境)
|
||
|
|
# app:
|
||
|
|
# build:
|
||
|
|
# context: .
|
||
|
|
# dockerfile: Dockerfile
|
||
|
|
# container_name: gamegroup-backend
|
||
|
|
# restart: always
|
||
|
|
# ports:
|
||
|
|
# - "3000:3000"
|
||
|
|
# environment:
|
||
|
|
# NODE_ENV: production
|
||
|
|
# DB_HOST: mysql
|
||
|
|
# REDIS_HOST: redis
|
||
|
|
# depends_on:
|
||
|
|
# - mysql
|
||
|
|
# - redis
|
||
|
|
# networks:
|
||
|
|
# - gamegroup-network
|
||
|
|
|
||
|
|
volumes:
|
||
|
|
mysql-data:
|
||
|
|
redis-data:
|
||
|
|
|
||
|
|
networks:
|
||
|
|
gamegroup-network:
|
||
|
|
driver: bridge
|