docker安装mongo 基于CentOS

48 阅读2分钟

docker 安装mongodb

  • 拉取mongo
docker pull mongo
  • 创建数据目录
mkdir -p /data/mongo/config
mkdir -p /data/mongo/data
mkdir -p /data/mongo/logs
touch /data/mongo/config/mongod.conf
chmod 777 /data/mongo
  • 使用 vi 或 vim 编辑器打开mongod.conf文件:

# 数据库存储路径
dbpath=/data/mongo/data
 
# 日志文件路径
logpath=/data/mongo/logs/mongod.log
 
# 监听的端口
port=27017
 
# 允许所有的 IP 地址连接
bind_ip=0.0.0.0
 
# 启用日志记录
journal=true
 
# 是否后台运行
fork=true
 
# 启用身份验证
#auth=true

  • 创建并启动容器
docker run -dit --name mongo \
-p 17017:27017 \
-v /data/mongo/config/mongod.conf:/etc/mongod.conf \
-v /data/mongo/data:/data/db \
-v /data/mongo/logs:/var/log/mongodb \
-e MONGO_INITDB_ROOT_USERNAME=admin \
-e MONGO_INITDB_ROOT_PASSWORD=admin \
--restart=always \
mongo:latest

  
#  解释
#  docker run: 用于运行一个新的 Docker 容器。
#  -dit:
#  		-d: 以后台模式运行容器。
#  		-i: 保持 STDIN 打开,即使没有附加。
#  		-t: 分配一个伪终端(TTY)。
#  --name mongo: 为容器指定一个名称,这里是 mongo。
#   -p 17017:27017: 将主机的 17017 端口映射到容器的 27017 端口。这意味着你可以通过主机的 17017 端口访问容器内的 MongoDB 服务。
#  -v /data/mongo/config/mongod.conf:/etc/mongod.conf: 将主机上的 /data/mongo/config/mongod.conf 文件挂载到容器内的 /etc/mongod.conf 文件。这样可以使用自定义的 MongoDB 配置文件。
#  -v /data/mongo/data:/data/db: 将主机上的 /data/mongo/data 目录挂载到容器内的 /data/db 目录。这是 MongoDB 存储数据的地方。
#  -v /data/mongo/logs:/var/log/mongodb: 将主机上的 /data/mongo/logs 目录挂载到容器内的 /var/log/mongodb 目录。这是 MongoDB 存储日志的地方。
#  -e MONGO_INITDB_ROOT_USERNAME=admin: 设置环境变量 MONGO_INITDB_ROOT_USERNAME 为 admin。这个变量用于在初始化数据库时创建管理员用户。
#  -e MONGO_INITDB_ROOT_PASSWORD=admin: 设置环境变量 MONGO_INITDB_ROOT_PASSWORD 为 admin。这个变量用于在初始化数据库时设置管理员用户的密码。
#  --restart=always: 设置容器的重启策略为 always,这意味着无论容器退出的原因是什么,Docker 都会自动重启容器。
#  mongo:latest: 使用 MongoDB 的最新版本镜像