docker search mongo
docker pull mongo:latest
docker images
$ docker run -d --name mongo -p 27017:27017 -v /Users/lifei/opt/mongodb/config:/data/configdb -v /Users/lifei/opt/mongodb/db:/data/db mongo --auth
#接着使用以下命令添加用户和设置密码,并且尝试连接。
docker exec -it mongo mongo admin
# 创建一个名为 admin,密码为 123456 的用户。
db.createUser({ user:'admin',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'}]});
# 尝试使用上面创建的用户信息进行连接。
db.auth('admin', '123456')
mongo 数据持久化
在使用MongoDB的容器时,数据持久化有很多种方式,下面我们将描述一种推荐的方式:
在宿主机上创建一个数据存储目录,并将其映射到容器中的目录中。
这将数据库文件放在主机系统中的已知位置,并便于主机系统上的工具和应用程序访问文件。
缺点是用户需要确保目录存在,例如,主机系统上的目录权限和其他安全机制配置正确。
使用方法如下:
在宿主机中创建一个目录,例如/my/own/datadir。
如下命令启动容器:
docker run --name some-mongo -v /my/own/datadir:/data/db -d mongo
查看当前运行的容器
# 查看正在运行的容器
docker container ls
# 查看所有容器
docker container ls -a
停止容器
# 指定 CONTAINER ID 停止容器
docker stop <CONTAINER ID>
# 指定容器名称停止容器
docker stop <CONTAINER NAME>
启动已经停止的容器
# 指定容器 CONTAINER ID 启动容器
docker start <CONTAINER ID>
# 指定容器名称启动容器
docker start <CONTAINER NAME>
重启已经运行的容器
# 指定容器 CONTAINER ID 重启容器
docker restart <CONTAINER ID>
# 指定容器名称重启容器
docker restart <CONTAINER NAME>
进入 mongo 交互模式
docker exec -it <CONTAINER NAME> mongo admin
网友评论