我有一个像这样的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”。
我应该做什么?
答案 0 :(得分:1)
您可以使用docker exec -ti <interactive container> bash
在交互式容器上获取shell。