抑制Codeship服务的输出

时间:2017-04-10 09:41:13

标签: mongodb logging docker codeship

我正在Codeship中测试一个需要数据库的容器。使用codeship-services.yml中的服务我将数据库容器链接到应用程序容器。问题是数据库容器正在打印大量输出,这些输出与测试的输出混合在一起。我想完全摆脱MongoDB日志,但是MongoDB没有选项可以做到这一点。

我目前正在运行它 mongod --quiet --setParameter logLevel=0但是仍然可以获得大量输出。

所以我正在寻找Codeship方面的解决方案来抑制容器的输出(Codeship术语中的服务)。在

logging:
    driver: none
来自docker-compose的

设置似乎不起作用。

这是我的codeship-services.yml:

myapp:
  build:
    dockerfile: Dockerfile
    image: myapp
  cached: true
  links:
    - database

database:
  image: mongo:3.4.3
  command: mongod --quiet --logpath /tmp/mongo.log --setParameter logLevel=0

2 个答案:

答案 0 :(得分:0)

如果您想完全摆脱MongoDB日志,可以将mongod命令的所有输出重定向到\dev\null

mongod --quiet --logpath /tmp/mongo.log --setParameter logLevel=0 > /dev/null 2>&1

答案 1 :(得分:0)

如果要将MongoDB日志重新路由到/dev/null,从而完全摆脱它们,则应替换由密钥--logpath指定的日志输出路径。例如:

database:
  image: mongo:3.4.3
  command: mongod --quiet --logpath /dev/null