Docker 安装MongoDB

Reads: 215 Edit

1 拉取最新的 MongoDB 镜像 从 Docker Hub 获取最新的 MongoDB 官方镜像:

docker pull mongo:latest

2 设置持久化数据和日志目录

假设你希望将数据和日志存储在主机上的特定目录中,可以新建两个目录来保存数据和日志。例如:

mkdir -p /soft/mongo/data
mkdir -p /soft/mongo/log

/soft/mongo/data 和 /soft/mongo/log 是要存储 MongoDB 数据和日志的路径。

授予权限

sudo chown -R 1000:1000 /soft/mongo/data
sudo chown -R 1000:1000 /soft/mongo/log

3 运行 MongoDB 容器 启动 MongoDB 容器,挂载数据和日志目录,并设置用户名和密码。使用以下命令,将 替换为你的 MongoDB 用户名和密码:

docker run -d \
  --name mongodb \
  -p 27017:27017 \
  -v /path/to/mongo/data:/data/db \
  -v /path/to/mongo/log:/var/log/mongodb \
  -e MONGO_INITDB_ROOT_USERNAME=<username> \
  -e MONGO_INITDB_ROOT_PASSWORD=<password> \
  mongo:latest

参数说明

  • -d:后台运行容器。
  • --name mongodb:指定容器名称为 mongodb。
  • -p 27017:27017:将主机的 27017 端口映射到容器的 27017 端口。
  • -v /path/to/mongo/data:/data/db:将主机目录挂载到 MongoDB 容器的数据目录 /data/db。
  • -v /path/to/mongo/log:/var/log/mongodb:将主机目录挂载到 MongoDB 容器的日志目录 /var/log/mongodb。
  • -e MONGO_INITDB_ROOT_USERNAME 和 -e MONGO_INITDB_ROOT_PASSWORD:设置 MongoDB 的管理员用户名和密码。

本次实验改为

docker run -d \
  --name mongodb \
  --privileged \
  -p 27017:27017 \
  -v /soft/mongo/data:/data/db \
  -v /soft/mongo/log:/var/log/mongodb \
  -e MONGO_INITDB_ROOT_USERNAME=wang \
  -e MONGO_INITDB_ROOT_PASSWORD=321@welcome \
  mongo:latest

4 检查 MongoDB 是否正常运行 使用以下命令检查容器状态:

docker ps

输出中应该能看到一个正在运行的 MongoDB 容器。可以通过连接到 MongoDB 进行验证:

docker exec -it mongodb mongo -u wang -p 321@welcome --authenticationDatabase admin

报错了,在mongo5.0后,mongo命令将不能执行操作,使用mongosh来替代。

使用以下命令替换

docker exec -it mongodb mongosh -u wang -p 321@welcome --authenticationDatabase admin

5 查看日志文件 MongoDB 的日志文件会保存在你设置的日志目录中。例如:

cat /path/to/mongo/log/mongodb.log

这就完成了 MongoDB 的安装和配置,数据和日志文件都已持久化存储在主机的指定目录中。

安装图形化工具 MongoDB Compass


Comments

Make a comment

www.ultrapower.com ,王硕的博客,专注于研究互联网产品和技术,提供中文精品教程。 本网站与其它任何公司及/或商标无任何形式关联或合作。