2017-04-14 98 views
0

很常见的用例与码头工人,撰写:泊坞窗,撰写,新容器版本和日志持久

  • 一个应用程序的代码使用Git从仓库拉。
  • 泊坞窗,compose.yml看起来像这样:

version: '2' services: web: build: ./myapp

当我要部署一个新的版本,我只是拉我的代码的最新版本,然后做出docker-compose up --build -d

除了每次进行更新时,它几乎都可以完美地工作,它将使用docker-compose logs擦除我可以访问的过去日志。我明白为什么码头工人会这么做(即使docker-compose重新创建了一个具有相同名称的容器,它仍然是一个全新的容器,所以它的逻辑日志被刷新)。但是,这实际上并不实际。

任何人都有解决方案吗?优选地,不是涉及修改图像或使用卷来存储日志。 (因为这应该是码头日志的重点,不必担心这一点)。

回答

0

启动容器时,您可以将输出重定向到一个日志文件,是这样的:

docker-compose up --build --no-color --force-recreate &> logs & 

相反的docker-compose logs,你可以随时tail logs你想。

0

我认为最好的方法是使用对码头工人的文档中描述的日志驱动程序选项之一: https://docs.docker.com/engine/admin/logging/overview/

如果这不是一个可行的解决方案,你可以给我你的目标一点点更多的上下文和障碍?