63 lines
1.9 KiB
YAML
63 lines
1.9 KiB
YAML
services:
|
|
# MySQL 8.0.24 服务
|
|
mysql:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
container_name: mysql_db
|
|
restart: unless-stopped
|
|
environment:
|
|
MYSQL_ROOT_PASSWORD: 123456 # 设置 root 密码
|
|
MYSQL_DATABASE: fire # 可选:自动创建名为 c9_fire 的数据库
|
|
MYSQL_USER: fire # 可选:创建新用户
|
|
MYSQL_PASSWORD: iTSJSPPZM3LSGAPC # 可选:新用户密码
|
|
ports:
|
|
- "3306:3306"
|
|
volumes:
|
|
- mysql_data:/var/lib/mysql # 挂载数据卷以持久化数据
|
|
networks:
|
|
- app_network
|
|
|
|
# Redis 服务
|
|
redis:
|
|
image: m.daocloud.io/docker.io/redis:latest
|
|
container_name: redis_cache
|
|
restart: unless-stopped
|
|
command: redis-server --requirepass FireSkins@99999
|
|
ports:
|
|
- "6379:6379"
|
|
networks:
|
|
- app_network
|
|
|
|
# RabbitMQ 3.9 服务
|
|
rabbitmq:
|
|
image: m.daocloud.io/docker.io/rabbitmq:3.9-management
|
|
container_name: rabbitmq_server
|
|
restart: unless-stopped
|
|
environment:
|
|
RABBITMQ_DEFAULT_USER: skins # 设置管理界面用户名
|
|
RABBITMQ_DEFAULT_PASS: mk # 设置管理界面密码
|
|
ports:
|
|
- "5672:5672" # 应用连接端口
|
|
- "15672:15672" # 管理界面 Web 端口
|
|
command: >
|
|
bash -c "rabbitmq-server &
|
|
sleep 20 &&
|
|
rabbitmqctl add_vhost /skins &&
|
|
rabbitmqctl set_permissions -p /skins skins '.*' '.*' '.*' &&
|
|
rabbitmqadmin --vhost=/skins --username=skins --password=mk declare queue name=notice_queue durable=true &&
|
|
rabbitmqadmin --vhost=/skins --username=skins --password=mk declare queue name=dlk_queue durable=true &&
|
|
rabbitmqadmin --vhost=/skins --username=skins --password=mk declare queue name=delivery_queue durable=true &&
|
|
wait"
|
|
networks:
|
|
- app_network
|
|
|
|
# 定义数据卷
|
|
volumes:
|
|
mysql_data:
|
|
|
|
# 定义网络
|
|
networks:
|
|
app_network:
|
|
driver: bridge
|