欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

DockerCompose安装MongoDB,并向宿主机映射数据文件/配置文件/日志文件

时间:2023-07-26
配置docker-compose.yml

新建存放mongodb数据的文件夹

mkdir -p ~/mongodb

创建docker-compose.yml文件

vim docker-compose.yml# 按 i 进入编辑模式,输入以下内容version: '3.8'services: mongo: image: mongo:5 # 选择mongodb版本 restart: always # 自启动 ports: - 27017:27017 # 映射宿主机端口 volumes: - /docker/mongodb/data/db:/data/db # 挂载数据文件,根据实际路径修改 :前的路径 - /docker/mongodb/data/log:/var/log/mongodb # 挂载日志文件,根据实际路径修改 :前的路径 - /docker/mongodb/data/config:/etc/mongo # 挂载配置文件,根据实际路径修改 :前的路径# 按 esc 键,再输入 :wq ,回车退出vim

启动mongodb

# 在docker-compose.yml文件路径下,该方式退出终端失效docker-compose up# 后台启动docker-compose up -d

若使用mongodb默认配置,到此已经完成mongodb安装。若需要修改mongodb启动配置可继续参考下文。

修改mongodb启动配置

创建存放配置文件的文件夹

mkdir -p ~/mongodb/conf

创建配置文件 mongod.conf

cd ~/mongodb/confvim mongod.conf#按 i 进入编辑模式,输入以下内容# for documentation of all options, see:# http://docs.mongodb.org/manual/reference/configuration-options/# Where and how to store data.storage: dbPath: /data/db journal: enabled: true directoryPerDB: true engine: wiredTiger wiredTiger: engineConfig: cacheSizeGB: 8 directoryForIndexes: true# where to write logging data.systemLog: destination: file logAppend: true path: /var/log/mongodb/mongod.log# network interfacesnet: port: 27017 bindIp: 0.0.0.0# how the process runsprocessManagement: timeZoneInfo: /usr/share/zoneinfo#replication:replication: oplogSizeMB: 51200 replSetName: rs0

在之前创建的docker-compose.yml文件增加一行配置

cd ~/mongodbvim docker-compose.yml# 按 i 进入编辑模式,输入以下内容version: '3.8'services: mongo: image: mongo:5 # 选择mongodb版本 restart: always # 自启动 ports: - 27017:27017 # 映射宿主机端口 volumes: - /docker/mongodb/data/db:/data/db # 挂载数据文件,根据实际路径修改 :前的路径 - /docker/mongodb/data/log:/var/log/mongodb # 挂载日志文件,根据实际路径修改 :前的路径 - /docker/mongodb/data/config:/etc/mongo # 挂载配置文件,根据实际路径修改 :前的路径 command: --config /docker/mongodb/mongod.conf # 配置文件# 按 esc 键,再输入 :wq ,回车退出vim

再启动就可以啦

cd ~/mongodbdocker-compose up -d

进入mongodb终端窗口

Docker Compose 启动时会使用目录名(mongodb)作为项目名称,Docker Compose 会将所有的资源名称中加上前缀 mongodb-。

docker exec -it mongodb-mongo-1 mongo

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。