2016-06-21 52 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