// 拉取镜像
docker pull mongo:3.6.5
运行
docker run -d --name mongodb --volume /usr/local/mongodata:/data/db -p 27017:27017 mongo:3.4 --auth
进入mongo
docker exec -it mongodb mongo
创建数据库账号
use admin;db.createUser({ user: 'root', pwd: '123', roles: [ { role: "root", db: "admin" } ] });
安装 mongo-express 可视化工具
docker run -d --name mongo-express -p 8081:8081 --link mongodb:mongo --env ME_CONFIG_MONGODB_ADMINUSERNAME='root' --env ME_CONFIG_MONGODB_ADMINPASSWORD='123' mongo-express
命令来查看可用版本
docker search mongo
取最新版的 MongoDB 镜像
docker pull mongo:latest
查看本地镜像
docker images
运行容器
docker run -itd --name mongo -p 27017:27017 mongo --auth
- -p 27017:27017 :映射容器服务的 27017 端口到宿主机的 27017 端口。外部可以直接通过 宿主机 ip:27017 访问到 mongo 的服务。
- –auth:需要密码才能访问容器服务
安装成功 查看容器的运行信息
docker ps
使用以下命令添加用户和设置密码,并且尝试连接
docker exec -it mongo mongo admin
// 创建一个名为 admin,密码为 123456 的用户
> db.createUser({ user:'admin',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'}]});
尝试使用上面创建的用户信息进行连接。
> db.auth('admin', '123456')