创建挂载文件目录
mkdir -p /root/mongodb
cd /root/mongodb
创建 docker-compose 文件
touch docker-compose.yml
使用 vi 命令把以下内容复制到 docker-compose 文件
version: '3.3'
services:
mongodb:
container_name: mongodb
ports:
- '9017:27017'
environment:
- MONGO_INITDB_ROOT_USERNAME=admin
- MONGO_INITDB_ROOT_PASSWORD=123456
volumes:
- '/root/mongodb/data:/data/db'
command: [--auth]
image: mongo
- –auth:需要密码才能访问容器服务。
- -e MONGO_INITDB_ROOT_USERNAME:设置用户名
- -e MONGO_INITDB_ROOT_PASSWORD:设置密码
- mongodb
5.0+
版本需要 CPU 支持AVX
,如果你的 CPU 不支持AVX
,请把镜像指定5.0
以下版本,如mongo:4.4.29
启动容器
docker-compose up -d
后续
进入容器
# `5.0`及以上版本
docker exec -it mongodb mongosh admin
# `5.0`以下版本
docker exec -it mongodb mongo admin
验证账号密码
db.auth('admin', '123456')
{ ok: 1 }
创建用户
db.createUser({user:"test",pwd:"123456",roles:[{ role: "root", db: "admin" }]})
db.createUser({user:'test',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]});