【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的容器)
相关推荐
眠りたいです10 分钟前
Docker:镜像的运行实体-Docker Container
java·运维·c++·docker·容器·eureka
刘个Java15 分钟前
手搓遥控器通过上云api执行航线
java·redis·spring cloud·docker
balalawb26 分钟前
docker构建镜像并上传到服务器
服务器·docker
忍冬行者32 分钟前
kubeadm部署的kubernetes集群的etcd由默认静态pod改为二级制的etcd集群
容器·kubernetes·etcd
忍冬行者32 分钟前
kubernetes安装traefik ingress,替换原来的nginx-ingress
云原生·容器·kubernetes
篙芷35 分钟前
k8s Service 暴露方式详解:ClusterIP、NodePort、LoadBalancer 与 Headless Service
云原生·容器·kubernetes
篙芷37 分钟前
k8s节点绑定:nodeName与nodeSelector实战
linux·docker·kubernetes
aashuii38 分钟前
k8s POD上RDMA网卡VF不生效问题
云原生·容器·kubernetes
weixin_466839 分钟前
K8S-Ingress
云原生·容器·kubernetes
l1t39 分钟前
wsl docker安装达梦数据库的过程
数据库·docker·容器·达梦