【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的容器)
相关推荐
江湖有缘27 分钟前
Docker开源项目: 基于Ubuntu系统部署ExpenseOwl自托管记账工具实战教程
ubuntu·docker·开源
qizhideyu1 小时前
kubernetes中的pod管理
云原生·容器·kubernetes
lxw20230271162 小时前
k8s的pod管理
linux·容器·kubernetes
Yiiz.2 小时前
Kubernetes Pod 与控制器知识点
云原生·容器·kubernetes
高磊20052 小时前
Kubernetes Pod 管理实战详解
linux·容器·kubernetes
流星白龙3 小时前
【Docker】9.Docker 镜像仓库实战
运维·docker·容器
想要成为老金高手3 小时前
Kubernetes 实战笔记(一):Pod 管理与 kubectl 核心命令全解
笔记·容器·kubernetes
张洛闻Eren3 小时前
云原生k8s【第六课】:K8s 访问控制
运维·docker·云原生·容器·kubernetes·k8s
Kina_C3 小时前
Kubernetes Pod 全生命周期管理:从命令实操到控制器版本更替
云原生·容器·kubernetes
奇特認3 小时前
kubernetes pod管理
云原生·容器·kubernetes