【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的容器)
相关推荐
灰勒塔德38 分钟前
ubuntu 部署 gitlab docker服务
docker·容器·gitlab
@不会写代码的小张2 小时前
传统的企业服务如何部署在k8s集群中
云原生·容器·kubernetes
深蓝电商API5 小时前
云原生爬虫:使用Docker和Kubernetes部署与管理分布式爬虫集群
docker·kubernetes
啟明起鸣6 小时前
【Go 与云原生】让一个 Go 项目脱离原生的操作系统——我们开始使用 Docker 制造云容器进行时
docker·云原生·golang
热爱运维的小七9 小时前
MongoDB 内存管理避坑指南:解决高占用、页错误等核心问题,让数据库性能翻倍
数据库·mongodb
victory043113 小时前
K8S重启之后无法启动故障排查 与 修复
云原生·容器·kubernetes
java_logo15 小时前
SGLANG Docker容器化部署指南
linux·运维·docker·容器·eureka·1024程序员节
Qayrup16 小时前
各个系统的 docker安装
运维·docker·容器
代码or搬砖17 小时前
Docker 部署 Java 项目实践
java·docker·容器
蓝象_17 小时前
docker下载配置redis
redis·docker·容器