MongoDB 是一个开源的基于文档的非关系型数据库,它的数据以 JSON 的形式进行存储。由于项目上用到了 MongoDB,这里就记录一下使用 docker 安装 mongo 的方法。
注:以下示例命令全部以 root
用户执行,可根据自身情况更改相应的命令。
一、拉取镜像
MongoDB 的 Docker 官方镜像页面是:https://hub.docker.com/_/mongo
这里我使用的是最新的镜像标签,可以使用下面的命令来拉取最新的镜像,如需要特定的版本,可以在镜像页面查看所有的标签。
docker pull mongo:latest
二、新建持久化目录
这里呢我把 MongoDB 的数据存储目录给持久化到主机中,因此需要先在主机上新建一个本地目录:
mkdir -p /root/docker/mongodb/data
这里我使用的目录路径为 “/root/docker/mongodb/data
“,可以根据自己的情况去更改。
也可以对配置文件进行一个持久化。默认情况下 mongod
不会读取配置文件,因此如果要使用本地的配置文件来启动mongod
不仅需要映射本地配置文件到容器中,还要在 docker run
时指定 mongod
读取配置文件,这个下文会说明,这里先示例新建本地配置文件。首先新建一个本地配置持久化目录:
mkdir -p /root/docker/mongodb/conf
接着编辑配置文件:
vim /root/docker/mongodb/conf/mongod.conf
配置文件的具体内容这里不再给出,可参考官方文档:https://docs.mongodb.com/manual/administration/configuration/
三、运行容器
接下来就是用 docker run
命令来运行一个 MongoDB 容器:
docker run -d \
-e MONGO_INITDB_ROOT_USERNAME=mongoadmin \
-e MONGO_INITDB_ROOT_PASSWORD=secret \
-v /root/docker/mongodb/data:/data/db \
-p 27017:27017 \
--network mongo-network \
--name mongo \
--restart always \
mongo:latest
第一行表示将该容器放置在后台运行。
第二第三行表示配置 mongo
数据库超级管理员账号的用户名和密码。
第四行表示将本地的 /root/docker/mongodb/data
目录映射为容器中的 /data/db
目录,即步骤二中的数据持久化目录。
如果需要映射本地配置文件,这里就需要再加上一行本地配置目录的映射:
-v /root/docker/mongodb/conf:/etc/mongo \
第五行表示将本地的27017
端口映射到容器中的27017
端口,后面就可以通过主机ip:27017
来访问容器中的 mongo
第六行表示使用名为"
的虚拟网络,方便其他容器连接 mongo-network
"mongo
,这个是可选的。
第七行表示给这个容器起一个名字,后面可以通过该名字来管理这个容器。
第八行表示该容器会开机自起。
第九行则是指定使用哪一个镜像和标签。如果需要指定配置文件,则需要在后面加上:
--config /etc/mongo/mongod.conf
运行了之后会返回一个容器ID。我们可以使用该容器的名字或者ID来控制这个容器:
启动了之后呢就可以通过映射出来的本地27017
端口来连接 mongo
四、视频教程
针对本次教程我也录制了视频教程,如有需要可以使用微信扫一扫文章下方左边的二维码或者搜索"sunriseydy"关注本站的微信公众号然后回复"docker_install_mongodb"
即可获取视频观看链接。
本作品由 sunriseydy 采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。
文章内容如未说明均为原创,欢迎转载,但请注明原作者(sunriseydy)和原文链接(https://blog.sunriseydy.top/technology/linux/docker-install-mongodb/)
部分来自互联网的文章,如有侵权,请联系我,24小时内删除,谢谢
感谢您的支持,SunriseYDY 会继续努力的!



打开支付宝扫一扫,即可进行扫码打赏哦
日出一点一 | 在探索的路上永不止步