docker容器部署mongodb

1 自定义配置文件mongod.conf

  • 路径:该配置文件一般存放在/data/configdb/目录中,启动容器时,加上--config /data/configdb/mongodb.conf来加载自定义配置
  • 配置文件内容
    # mongod.conf
    dbpath = /data/db
    logpath = /data/log/mongod.log
    logappend = true
    # fork = true
    bind_ip = 0.0.0.0
    port = 27017
    # auth = true
    oplogSize=2048
    
  • 说明
    • dbpath 数据库文件存储位置,未设置则默认存放在/data/db/目录中
    • logpath log文件存储位置
    • logappend true表示使用追加的方式写日志
    • fork 是否以守护进程方式运行
    • bind_ip 0.0.0.0表示全部ip可以访问
    • port 端口号
    • auth 是否启用认证,不懂不建议启用
    • oplogSize 设置oplog的大小(MB)

2、docker启动命令

  • 启动命令
    docker run -p 27017:27017 \
    -v /Users/chenbinhao/mongodb_27017/db:/data/db \
    -v /Users/chenbinhao/mongodb_27017/log:/data/log \
    -v /Users/chenbinhao/mongodb_27017/mongod.conf:/data/configdb/mongod.conf \
    -d mongo:3.4 --config /data/configdb/mongod.conf
    
  • 参数说明
    • -p 端口映射
    • -v 数据持久化在宿主机中,主要保存三个位置的数据
      • /data/db 数据文件映射,便于做数据持久化
      • /data/log 日志文件映射,便于查看日志
      • /data/configdb/mongodb.conf 配置文件映射,便于修改配置文件
    • -d 表示后台进行运行
    • --config /data/configdb/mongodb.conf 使用自定义配置文件启动容器
    • --auth 开启认证,如果没有添加到配置文件mongodb.conf中,也可以添加到命令中mongo:3.4后面做启动参数

3、docker-compose启动

  • 目录结构

    ├─mongodb
    │	├─docker-compose.yml
    │	├─config
    │	│  	└─mongod.conf
    │	├─log
    │	│  	└─mongod.log
    │	└─db
    │	│	└─..
    
  • 配置docker-compose.yml文件

    version: '3'
    services:
      mongodb:
        image: mongo:3.4
        restart: always
        ports:
          - "27017:27017"
        volumes:
          - "./db:/data/db"
          - "./config/mongod.conf:/data/configdb/mongod.conf"
          - "./log/mongod.log:/data/log/mongod.log"
        command: --config /data/configdb/mongod.conf
    
  • 注意:如图标红的都是容器中的路径,不要写成宿主机的路径
    注意

  • 命令

    • 启动:在docker-compose.yml所在目录执行docker-compse up -d
    • 启动:或者指定启动文件docker-compose -f ./docker-compose.yml up -d
    • 停止并删除:docker-compose down
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值