mongo docker 内存问题

mongo docker 镜像对于cgroup 的内存管理是有点问题的,所以推荐基于容器运行mongo 的配置上wiredTigerCacheSizeGB 的大小
可以规避内存占用的问题(同时最好做好内存限制)

服务内容占用情况查看

 
db.adminCommand(
   {
     hostInfo: 1
   }
)

参考配置

version: '3'
services:
  db:
    image: mongo:4.2-bionic
    volumes:
      - ./data:/data/db
    command: --auth --wiredTigerCacheSizeGB 2
    mem_limit: 4096m
    ports:
      - 27017:27017
    environment:
      - MONGO_INITDB_ROOT_USERNAME=xxxx
      - MONGO_INITDB_ROOT_PASSWORD=xxxxxxxx

说明

从容器安全实践来说,配置内存是很有必要的,而且最好配置上,规避一些业务问题,对于检查是否配置成功可以通过adminCommand 的hostInfo 查看

参考资料

https://www.mongodb.com/docs/manual/faq/diagnostics/#must-my-working-set-size-fit-ram
https://hub.docker.com/_/mongo
https://www.mongodb.com/docs/manual/core/wiredtiger/#memory-use

posted on 2022-08-18 23:07  荣锋亮  阅读(280)  评论(0编辑  收藏  举报

导航