docker安装mongo

1.查看镜像

docker search mongo

2.拉取的镜像

docker pull mongo:latest

3.查看下拉取的镜像

docker images

4.运行启动命令,并且指定auth

docker run -p 27017:27017 -v /data/docker/mongo:/data/db --name mongodb -d mongo --auth

参数解释:

-p 映射容器服务的 27017 端口到宿主机的 27017 端口。外部可以直接通过 宿主机 ip:27017 访问到 mongo 的服务
-v 为设置容器的挂载目录,这里是将本机的“/data/mongo”目录挂载到容器中的/data/db中,作为 mongodb 的存储目录
--name 为设置该容器的名称
-d 设置容器以守护进程方式运行
--auth 需要密码才能访问容器服务。

5.查看容器启动运行情况

docker ps

6.添加用户和设置密码,并且尝试连接。

docker exec -it mongodb mongo admin

7.创建账户并连接

  • 创建一个名为 root,密码为 root的用户。

db.createUser({ user:'root',pwd:'root',roles:[ { role:'userAdminAnyDatabase', db: 'admin'}]});

  • 尝试使用上面创建的用户信息进行连接。返回1表示认证成功

db.auth('root', 'root')

  • 认证成功后,查看存储一些用户信息

db.auth('root','root')

返回信息
admin 0.000GB
config 0.000GB
local 0.000GB

8.创建一个业务数据库和对应的读写账户

use demo_db;

db.createUser({
user: 'beita',
pwd: 'beita',
roles: [ { role: "readWrite", db: "db_user" } ]
});

然后用这个dev账号来登录

注意事项

1.数据库和用户是绑定的,光创建一个超级用户并不能操作在其他新建的数据库中插入数据

2.在切换数据库时,先切换认证用户,不然会出现too many users are authenticated的错误。
posted @ 2021-06-26 20:46  xudong5273  阅读(172)  评论(0)    收藏  举报