Docker Compose 配置¶
本目录包含常用的 Docker 容器编排和启动脚本。
目录内容¶
| 脚本 | 说明 |
|---|---|
| setup_mongo_replica.bat | MongoDB 副本集一键配置 |
| setup_mq.bat | RabbitMQ 消息队列启动 |
| setup_redis.bat | Redis 拉取脚本 |
MongoDB 副本集配置¶
docker-compose.yml¶
services:
master:
image: mongo:5.0.13
container_name: mongo_rs1
hostname: mongo_rs1
restart: unless-stopped
ports:
- "27017:27017"
volumes:
- ./data/db:/data/db
command: mongod --replSet rs --bind_ip_all
healthcheck:
test: mongosh --eval "db.adminCommand('ping')"
interval: 10s
timeout: 5s
retries: 3
networks:
default:
name: mongo_network
driver: bridge
initReplica.js¶
初始化副本集的 JavaScript 脚本:
try {
rs.initiate({
_id: "rs",
members: [
{ _id: 0, host: "mongo_rs1:27017", priority: 2 }
]
});
sleep(3000);
db.adminCommand({ setParameter: 1, transactionLifetimeLimitSeconds: 3600 });
print("Replica set initialized successfully.");
} catch (e) {
printjson(e);
quit(1);
}
使用步骤¶
- 执行
setup_mongo_replica.bat一键配置 - 等待脚本完成初始化
- 使用连接字符串连接:
mongodb://admin:admin@localhost:27017/?replicaSet=rs&authSource=admin
RabbitMQ 配置¶
快速启动 RabbitMQ 容器:
docker run -d --name my-rabbitmq \
-p 5672:5672 -p 15672:15672 \
-v C:\docker\rabbitmq\data:/var/lib/rabbitmq \
--hostname my-rabbitmq-host \
-e RABBITMQ_DEFAULT_VHOST=/ \
-e RABBITMQ_DEFAULT_USER=guest \
-e RABBITMQ_DEFAULT_PASS=guest \
--restart=always \
rabbitmq:3-management
- 管理界面:http://localhost:15672
- 默认账号:guest / guest
Redis 配置¶
docker pull redis:latest