【docker 】docker-compose 部署mongoDB

在notepad++中将格式改为UNIX (编辑》文档格式转化》转为Unix),编码改为UTF-8 ( 编码》转为UTF-8),改好后如图

新建启动脚本 mongo.sh

复制代码
#!/bin/bash
# 挂载路径
DATA_DIR=/opt/docker-data/mongodb/data
LOG_DIR=/opt/docker-data/mongodb/log
CONFIG_DIR=/opt/docker-data/mongodb/config
# 如果目录不存在,则创建目录并设置权限
if [ ! -d "$DATA_DIR" ]; then
  mkdir -p "$DATA_DIR"
  chmod -R 777 "$DATA_DIR"
fi
if [ ! -d "$LOG_DIR" ]; then
  mkdir -p "$LOG_DIR"
  chmod -R 777 "$LOG_DIR"
fi
if [ ! -d "$CONFIG_DIR" ]; then
  mkdir -p "$CONFIG_DIR"
  chmod -R 777 "$CONFIG_DIR"
fi

配置mongod.conf文件

复制代码
systemLog:
  destination: file
  path: /var/log/mongodb/mongod.log
  logAppend: true
storage:
  dbPath: /data/db
  journal:
    enabled: true
  wiredTiger:
    engineConfig:
      cacheSizeGB: 1
  engine: wiredTiger
  directoryPerDB: true
  journal:
    enabled: true
  mmapv1:
    smallFiles: true
    journal:
      enabled: true
net:
  bindIpAll: true
  port: 27017
  protocol: tcp
  maxIncomingConnections: 10000
security:
  authorization: enabled

启动docker-compose

复制代码
docker-compose up -d

至于如何重新启动

复制代码
docker-compose up是创建和启动容器,具我所知只有在三种情况下会重新创建容器(即先删除旧的容器,再生成一个新的):
1.当镜像有更新时,会重新创建容器;
2.容器不存在(即被删除了);
3.当容器A重新创建时,其依赖此容器的容器将会重新创建(即docker-compose.yml文件中的容器设置了depends_on为容器A的容器)
相关推荐
修己xj7 分钟前
Linux系统离线安装Docker完整指南
docker
周杰伦_Jay1 小时前
【 Kubernetes(K8s)完全指南】从入门到实战(含命令+配置+表格对比)
云原生·容器·kubernetes
__beginner__1 小时前
docker安装influxdb
运维·docker·容器
Wang's Blog3 小时前
MongoDB小课堂: 分片集群架构深度解析与生产级优化指南
数据库·mongodb·架构
Empty_7773 小时前
K8S-daemonset控制器
云原生·容器·kubernetes
todoitbo4 小时前
openEuler 云原生实战:Docker Compose 部署 Nextcloud 企业级私有云
docker·云原生·容器·openeuler
一条懒鱼6664 小时前
K8S-daemonset控制器
云原生·容器·kubernetes
一周困⁸天.5 小时前
K8S-Service资源对象
云原生·容器·kubernetes
weixin_46685 小时前
Docker常用命令与操作
运维·docker·容器
The star"'6 小时前
docker swarm和containerd
运维·docker·容器