目录结构
├── docker-compose.yml
└── mongodb
├── initdb.d
│ └── nextpage.js
└── mongod.conf
docker-compose.yml 模板
version: '3'
# 数据
volumes:
mongodata:
name: mongodata
services:
mongodb:
image: mongo:latest
container_name: mongodb
restart: unless-stopped
ports:
- 27017:27017
volumes:
- ./mongodb/mongod.conf:/etc/mongo/mongod.conf:rw
- ./mongodb/initdb.d/:/docker-entrypoint-initdb.d/ #设置容器启动脚本
- mongodata:/data/db
environment:
- MONGO_INITDB_ROOT_USERNAME=root
- MONGO_INITDB_ROOT_PASSWORD=root
- MONGO_INITDB_DATABASE=admin
./mongodb/initdb.d/:/docker-entrypoint-initdb.d/ #设置容器启动脚本 创建用户密码
mongod.conf 模板
storage:
dbPath: /data/db
journal:
enabled: true
wiredTiger:
engineConfig:
cacheSizeGB: 1.0
net:
port: 27017
bindIp: 0.0.0.0
cacheSizeGB:指定运行使用最大内存 单位G
nextpage.js
···
db.createUser({
user: “user1”,
pwd: “user1”,
roles: [
{ role: “readWrite”, db: “sparkstudio”, },
],
});
···
此脚本用于启动容器初始化脚本