如何在docker swarm模式下记录容器

时间:2016-06-21 09:20:36

标签: docker docker-swarm

有没有办法记录在docker swarm模式下使用docker service create创建的容器?

2 个答案:

答案 0 :(得分:16)

最后,该功能已在docker 17.03中实现。您可以使用以下命令获取在不同/多个节点上运行的服务的日志:

docker service logs -f {NAME_OF_THE_SERVICE}

您可以使用以下命令获取服务名称:

docker service ls

请注意,这是实验性功能(非生产就绪),为了使用它,您必须启用实验模式 < / p>

更新: docker logs service 现在是docker&gt; = 17.06的标准功能。 https://docs.docker.com/engine/reference/commandline/service_logs/

答案 1 :(得分:5)

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

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

例如,如果你想使用像Logstash + Kibana这样的东西,gelf驱动程序是完美的: - )