- 拉取官方的最新版本的镜像
[root@localhost ~]# docker pull mongo:latest
- 创建主机挂载配置目录
- data目录存放mongodb数据库文件,删除重启容器不会丢失
[root@localhost ~]# mkdir -p /opt/dockerdata/mongodb/data
- docker 启动 mongo
[root@localhost ~]# docker run -itd --name mongodb --restart always -v /opt/dockerdata/mongodb/data:/data/db -p 27017:27017 mongo:latest --auth
命令说明:
-it 表示与容器进行交互式启动 -d 表示可后台运行容器(守护式运行)
–name: 指定容器名;
-p: 指定服务运行的端口;
-v: 映射目录或文件;
–restart=always Docker服务重启容器也启动
–auth:需要密码才能访问容器服务
- 配置mongo账号密码
进入容器
[root@localhost ~]# docker exec -it mongodb /bin/bash
进入mongo
root@93d0002a2f65:/# mongosh
- 创建db账户
admin> db.createUser({ user:'xxx',pwd:'dba.123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]})
{ ok: 1 }
- 校验账户
admin> db.auth("xxx","dba.123456")
{ ok: 1 }
- 退出mongo +退出容器
admin> exit
root@93d0002a2f65:/# exit
exit
[root@localhost ~]#