在运行交互式命令时,如何查看docker-compose服务的输出?

时间:2016-08-19 00:58:34

标签: docker docker-compose

我有一个像这样的docker-compose文件:

my-service:
    ...

interactive-command:
    links:
        - my-service
    ...

我这样调用它:

docker-compose -f path/to/docker-compose.yml run interactive-command

(实际上,我在文件中有两个命令都链接到服务,有时我运行一个,有时是另一个,但我不认为这会对问题产生影响。)

主要问题是,我没有看到my-service的任何输出。特别是,我没有看到它的错误消息(虽然我可以使用“docker logs”找到它们)。此外,即使服务退出,interactive-command也会继续运行,但在这种情况下它应该以错误退出。

另一方面,如果我使用“docker-compose up”而不是“docker-compose run”,我会从所有服务中获得格式良好的输出,但是我似乎无法与之交互交互式命令,即使我为交互式命令设置了“tty:true”和“stdin_open:true”。

我应该做什么?

1 个答案:

答案 0 :(得分:1)

您可以使用docker exec -ti <interactive container> bash在交互式容器上获取​​shell。