docker 安装mongoDB

在Docker中安装MongoDB是一个简单的过程,可以通过以下步骤完成:

  1. **拉取MongoDB官方镜像**:

使用Docker命令行工具拉取MongoDB的官方Docker镜像。

复制代码
 docker pull mongo
  1. **运行MongoDB容器**:

使用`docker run`命令来启动一个新的MongoDB容器。默认情况下,MongoDB监听27017端口,因此需要将容器的端口映射到宿主机的相同或不同的端口。

复制代码
docker run --name mongodb -d -p 27017:27017 mongo

在这个命令中:

  • `--name mongodb` 为容器指定一个名称,方便后续管理。

  • `-d` 表示在后台运行容器。

  • `-p 27017:27017` 将容器的27017端口映射到宿主机的27017端口。

  1. **验证MongoDB是否运行**:

使用`docker ps`命令查看容器是否成功运行。

复制代码
docker ps
  1. **连接到MongoDB**:

你可以通过MongoDB客户端或MongoDB Shell连接到MongoDB服务器。如果你在本地运行Docker容器,可以使用以下命令:

复制代码
 mongo localhost:27017
  1. **配置数据卷**(可选):

为了持久化MongoDB数据,你可以创建一个数据卷或挂载宿主机的目录到容器中。

复制代码
docker run --name mongodb -d -p 27017:27017 -v /data/db mongo

在这个命令中,`-v /data/db` 表示将宿主机的`/data/db`目录挂载到容器的`/data/db`目录,这是MongoDB的默认数据存储路径。

  1. **环境变量配置**(可选):

你可以通过设置环境变量来配置MongoDB,例如设置认证机制。

复制代码
docker run --name mongodb -d -p 27017:27017 -e MONGO_INITDB_ROOT_USERNAME=myUser -e MONGO_INITDB_ROOT_PASSWORD=myPassword mongo

在这个命令中,`-e` 用于设置环境变量,这里配置了MongoDB的初始用户名和密码。

请注意,上述步骤启动的MongoDB实例没有启用身份验证。在生产环境中,建议启用认证并进行适当的安全配置。

如果你需要使用特定的MongoDB版本,可以通过指定标签来拉取特定版本的镜像,例如`mongo:4.4`。

在实际操作中,建议查看MongoDB的官方Docker Hub页面以获取最新的镜像标签和配置选项。

将宿主机目录挂载到mangodb容器

复制代码
mkdir -p /path/to/mongodb/configdb
mkdir -p /path/to/mongodb/data

docker run --name mongodb -d -p 27017:27017 \
  -v /path/to/mongodb/configdb:/configdb \
  -v /path/to/mongodb/data:/data/db \
  mongo --config /configdb/mongod.conf
  • --config /configdb/mongod.conf 指定MongoDB的配置文件路径。

在宿主机的配置文件目录中创建MongoDB的配置文件mongod.conf,并添加所需的配置。

复制代码
storage:
  dbPath: /data/db
net:
  port: 27017
相关推荐
Wang's Blog20 分钟前
MongoDB小课堂: 深度诊断与优化——响应时间、内存压力及连接数故障全方位解决指南
数据库·mongodb
忙里偷闲学python27 分钟前
containerd_buildkitd构建镜像,告别docker构建
运维·docker·容器
阿拉斯攀登2 小时前
Docker 全面解析:从核心概念到实践应用
docker·云原生·容器·架构
哲Zheᗜe༘3 小时前
学习K8S-Deployment资源对象
docker·容器·kubernetes
生活爱好者!3 小时前
【影视项目】NAS 部署稳定视频订阅源咪咕
服务器·网络·docker·容器·音视频
国家不保护废物3 小时前
RAG + Agent + Prompt工程中
docker·llm·aigc
天命码喽c4 小时前
Docker-compose部署GraphRAG-2.7.0
运维·docker·容器
你的坚持终将美好,5 小时前
Docker 中一起启动多个容器脚本
docker·容器
像风一样自由20205 小时前
Docker 与 Docker Compose:从零开始的容器化之旅
运维·docker·容器
血小溅5 小时前
Springboot项目Docker 多平台构建指南
后端·docker