【问题标题】:How to reduce mongo log verbosity in a docker-compose image?如何减少 docker-compose 图像中的 mongo 日志详细程度?
【发布时间】:2019-02-14 17:01:43
【问题描述】:

我在一个更大的服务器中运行 MongoDB,由 docker-compose 控制。

我想减少 Mongo 日志的详细程度(并且可能最终也控制其他 Mongo 设置)。不确定将其放入我的最小配置中的哪个位置;我目前只有:

  mongo:
    image: mongo:3.2
    volumes:
      - ${MONGO_DATA_DB}:/data/db
    ports:
      - ${EXPOSED_MONGO_PORT}:27017

【问题讨论】:

标签: mongodb logging docker-compose


【解决方案1】:

我已经尝试了接受的答案,但 mongo 日志仍然很冗长。然后,在this thread 之后,我省略了整个日志,这在我的情况下要好得多:

mongo:
    command: mongod --quiet --logpath /dev/null 

【讨论】:

    【解决方案2】:

    阅读 DockerHub 上 MongoDB 的 official image 的描述(您正在使用相同的图像)我推断您可以使用 command 部分将命令传递给 mongod码头工人撰写。然后您可以使用--quiet 选项来限制输出量。

    这样你的 docker-compose 会如下:

    mongo:
        image: mongo:3.2
        volumes:
          - ${MONGO_DATA_DB}:/data/db
        ports:
          - ${EXPOSED_MONGO_PORT}:27017
        command: --quiet
    

    您可以找到 mongod 接受 here 的选项的完整列表,也可以在 bash 中查看 mongod--help 输出。

    有时 docker 图像接受配置参数作为环境变量,因此您可以在运行时更改服务的配置。遗憾的是,我在此 docker 映像中找不到有关可用环境变量的任何官方信息,但我鼓励您继续调查此替代路径。

    希望对你有帮助!

    编辑

    图像文档中的另一种方法:

    对于更复杂的配置设置,您仍然可以使用 MongoDB 配置文件。 mongod 默认不读取配置文件,所以需要指定 --config 选项和配置文件的路径。通过从 mongo 创建自定义 Dockerfile 或将其从主机挂载到容器来创建自定义配置文件并将其放入容器中。有关配置文件选项的完整列表,请参阅 MongoDB 手册。

    例如,/my/custom/mongod.conf 是自定义配置文件的路径。然后像下面这样启动 MongoDB 容器:

    $ docker run --name some-mongo -v /my/custom:/etc/mongo -d mongo --config /etc/mongo/mongod.conf

    这样,您的 docker-compose 将如下所示:

    mongo:
        image: mongo:3.2
        volumes:
          - ${MONGO_DATA_DB}:/data/db
          - ${MONGO_DATA_CONFIG}:/etc/mongo/
        ports:
          - ${EXPOSED_MONGO_PORT}:27017
        command: --config /etc/mongo/mongod.conf
    

    【讨论】:

      【解决方案3】:

      设置日志路径对我有用。它不显示日志输出,而是保存到文件中。

          mongo:
              container_name: mongo
              image: mongo
              restart: unless-stopped
              command: 
                  - '--logpath'
                  - '/var/log/mongodb/mongod.log'
              ports:
                  - '27017:27017'
      

      【讨论】:

        【解决方案4】:

        Bitnami 的另一个 MongoDB 映像通过撰写文件中的环境变量提供此功能。

        https://hub.docker.com/r/bitnami/mongodb。在配置系统日志详细级别

        部分解释

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2019-05-27
          • 2014-06-17
          • 1970-01-01
          • 1970-01-01
          • 2021-01-04
          • 2020-04-05
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多