1、查看当前可用版本
docker search mongo #通过该命令查看可用的MongoDB版本
2、获取最新的MongoDB镜像
docker pull mongo
3、查看本地是否已安装了mongo
docker images
4、安装完成以后,在宿主机上创建需要挂载的文件,并使用以下命令运行mongo容器
创建文件夹:mkdir ./mongodb/{conf,data} (注:在准备挂载的目录下创建)
docker run -d -p 27017:27017 -v /docker-work/mongodb/conf:/data/configdb -v /docker-work/mongodb/data:/data/db --name mongodb fefd78e9381a --auth
参数说明: fefd78e9381a mongo镜像id 也可使用镜像名
-p 27017:27017 :映射容器服务的 27017 端口到宿主机的 27017 端口。外部可以直接通过 宿主机 ip:27017 访问到 mongo 的服务。 使用-v将配置文件挂载到宿主机的/docker-work/mongodb/conf目录下
使用-v将数据库文件挂载到宿主机的/docker-work/mongodb/data目录下
–auth 以认证的方式启动
–name mongo 容器的名字为mongo
–auth:需要密码才能访问容器服务。
5、通过以下命令查看是否运行成功
docker ps
上图为运行成功。
6、接着使用以下命令添加用户和设置密码,并且尝试连接。
$ docker exec -it mongodb mongo admin
# 创建一个名为 admin,密码为 123456 的用户。
db.createUser({ user:'admin',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'}]});
# 尝试使用上面创建的用户信息进行连接。
db.auth('admin', '123456')
其他操作:
use admin 使用admin数据库
db.createUser({user:"admin",pwd:"password",roles:["root"]}) 创建管理员用户
db.auth("admin", "password") 认证账号密码
use zs 创建zs数据库
db.createUser({user: 'zs',pwd: 'zs',roles: [{role: 'readWrite', db: 'zs'}]}) 创建zs用户
db.zs.insert({"name":"菜鸟教程"}) 添加数据
最后
如果使用云服务记得开放端口



