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
相关推荐
Waay1 小时前
图文详解|K8s Pod内部结构
docker·云原生·kubernetes
三易串口屏3 小时前
实验2 实时显示单片机的参数(整数、小数、中文 自定义协议方式)
单片机·物联网·mongodb·自动化·串口屏·医疗器械·工控设备
r-t-H5 小时前
KVM虚拟化与Docker基础实践-第二章
阿里云·docker·容器
Lyra_Infra6 小时前
技术排查报告:Kubernetes Ingress 路由异常
docker·架构
木雷坞7 小时前
Home Assistant Docker Compose 升级失败排查:镜像、备份和设备映射
服务器·docker·home assisant
老码观察7 小时前
K8s 容器化部署的宿主机资源规划的踩坑实录
docker·容器·kubernetes
我是谁??7 小时前
【6】基于 Docker + YOLOv8 的模型部署实战(GTX1660S + Ubuntu22.04)
yolo·docker·容器
魔极客8 小时前
1panel面析中Ollama Docker配置错误解析与修复
运维·docker·容器
JAVA社区8 小时前
Java进阶全套教程(八)—— Docker超详细实战详解
java·运维·开发语言·docker·容器·面试·职场和发展
我是谁??8 小时前
【5】基于 Docker + YOLOv8 环境实现模型量化(GTX1660S + Ubuntu22.04)
yolo·docker·容器