2016-06-21 50 views
12

有没有方法记录在码头群模式下使用docker service create创建的容器?如何在码头群模式下记录容器

+1

如果您正在寻找'docker-compose logs'类型的日志聚合,它还没有在docker swarm模式下实现。如果你需要日志,所有你能做的事(AFAIK)是找出哪个节点承载你的容器并直接使用'docker logs '。 – ronkot

回答

5

该功能尚未实现。正如@ronkot所说,你必须找出哪个节点正在运行你的服务实例并直接连接到它。

即使该功能将来可能会实现,我强烈建议您开始使用Docker日志记录驱动程序来集中化群集的所有日志。下面是详细信息:https://docs.docker.com/engine/admin/logging/overview/

佛例如,如果你想使用类似Logstash + Kibana :-)

12

最后该功能已经在泊坞窗17.03所实施的GELF司机是完美的。你可以使用此命令不同/多个节点上运行的服务的日志:

docker service logs -f {NAME_OF_THE_SERVICE} 

你可以得到的服务的名称:

docker service ls 

注意,这是一个实验功能(未投入生产),为了使用它,你必须启用实验模式

更新:码头日志服务现在是码头> = 17.06的标准功能。 https://docs.docker.com/engine/reference/commandline/service_logs/#parent-command