docker compose部署单机mongo

创建目录

mkdir -p /usr/local/docker/mongo/config/ /usr/local/docker/mongo/data/db/ /usr/lcoal/docker/mongo/logs/

 

创建docker-compose.yaml文件

复制代码
version: '3.8'

services:
  mongo:
    image: mongo:6.0  
    container_name: mongo
    restart: always
    ports:
      - "27017:27017"  # 将容器内的 27017 端口映射到宿主机的 27017 端口
    environment:
      - TZ=Asia/Shanghai
      - MONGO_INITDB_DATABASE=xhs_data
      - MONGO_INITDB_ROOT_USERNAME=root  # 初始化数据库的根用户名
      - MONGO_INITDB_ROOT_PASSWORD=root  # 初始化数据库的根密码
    volumes:
      - /usr/local/docker/mongo/data/db:/data/db 
      - /usr/local/docker/mongo/logs:/var/log/mongodb
      - /usr/local/docker/mongo/config:/data/configdb
    command: mongod --config /data/configdb/mongo.conf #执行挂载的配置
  mongo-express:  # 可选:MongoDB 的 Web 管理界面 一般使用其他工具了这个可暂时不装
    image: mongo-express
    container_name: mongo-express
    restart: always
    ports:
      - "8081:8081"  # 将容器内的 8081 端口映射到宿主机的 8081 端口
    environment:
      - ME_CONFIG_MONGODB_ADMINUSERNAME=root  # MongoDB 的管理员用户名
      - ME_CONFIG_MONGODB_ADMINPASSWORD=root  # MongoDB 的管理员密码
      - ME_CONFIG_MONGODB_SERVER=mongo  # MongoDB 服务的名称,与上面的服务名一致
    depends_on:
      - mongo
    networks:
      - devopsnetwork

networks:
  devopsnetwork:
    external: true
复制代码

创建配置文件mong.conf

复制代码
systemLog:
  destination: file
  path: /var/log/mongodb/mongo.log #指定MongoDB的日志文件路径
  logAppend: true
storage:
  dbPath: /data/db #指定MongoDB的数据文件路径
  journal:
    enabled: true
  wiredTiger:
    engineConfig:
      cacheSizeGB: 1
  engine: wiredTiger
  directoryPerDB: true
net:
  bindIpAll: true
  port: 27017 #指定MongoDB的端口号
  maxIncomingConnections: 10000
security:
  authorization: enabled #指定是否启用MongoDB的身份验证机制
复制代码

 启动与关闭

docker compse up -d
docker compose down
docker logs mongo

 

posted @   白玉神驹  阅读(20)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示