docker-compose在容器重启时重放过去的输出

时间:2017-11-14 02:00:59

标签: docker logging docker-compose

似乎docker-compose在容器重新启动时重放捕获的输出。这是违背期望的,并且误导了我的容器实际上在做什么。可以禁用吗?

例如,

  • 我有一个简单的服务,记录和退出w /代码0。
  • 在docker-compose.yml中,我设置了restart: always

当运行docker-compose up时,每次日志记录容器在现有容器后重新启动时,我会看到所有先前的输出已重新连接,以及当前运行中的所有新添加。

Here's an easy to run example

  • 克隆,cd <project>/fluentddocker-compose build,&amp; docker-compose up

我正在使用docker-compose版本1.16.1,在OSX上构建6d1ac21。

提示会很棒!

3 个答案:

答案 0 :(得分:0)

这是一个生命周期问题吗?停止和&#34; rm&#34;之间存在差异。如果您执行docker-compose stop,则会暂停容器。使用&#34; docker-compose up&#34;从上次重启它们。 但是&#34; docker-compose rm&#34;会破坏容器。 docker-再次组成从头开始重新创建它们。

答案 1 :(得分:0)

确定。您是否尝试始终为容器移除重启?

答案 2 :(得分:0)

这似乎是open issue with Docker,正在其中重播1542287917.2141993上的日志。解决方法is mentioned here

  

alias docker-logs-truncate =“ docker-machine ssh默认值-'sudo find / var / lib / docker / containers / -iname \” * json.log \“ | xargs -I {} sudo dd if = / dev / null of = {}'“