如何查看docker堆栈中的服务输出?

使用Docker Compose,当我们运行docker-compose up我们可以看到控制台上显示的所有服务的输出,即使使用不同的颜色也可以更容易区分它们。 即使我们有一个服务的多个实例,它们的输出都出现在那里。

现在,我已经尝试了第一次使用Docker Compose v3尝试部署一个堆栈。

我做完之后

 docker deploy stack --compose-file=docker-compose.yml the_stack 

我可以看到使用的服务正在运行

 docker service ls 

不过,我想看到在Docker Compose中的服务输出。

例如,如果我有一个在一个节点上运行3个副本的服务background_worker ,我希望能够在该节点中看到这些副本的输出,就像我使用Docker Compose所做的一样。

如何查看Docker Swarm中部署在Docker Stack中的复制服务的输出?

编辑 :作为回答,我需要在你的docker守护进程上启用实验选项,但是,我在用hyperv驱动程序创build的docker-machine中运行这个,因为还不能用Docker运行多节点群视窗。 如何在docker机器中启用这个function?

目前有两种select1.13:

  1. 连接到每个节点并运行docker logs在单个容器上。
  2. 启用你的docker守护进程的实验选项,这将允许你使用docker service logs