有什么方法可以在容器中只使用Docker Compose启动一个交互式shell吗?我在docker-compose.yml中尝试过这样的东西:
myapp:
image: alpine:latest
entrypoint: /bin/sh
当我使用docker-compose up启动这个容器时,它立即退出。是否有任何标志,我可以添加到入口点命令,或作为myapp的额外选项,以启动交互式shell?
我知道有本地docker命令选项来实现这一点,只是好奇是否只使用docker Compose也可以。
如果yml被称为docker-compose。Yml它可以启动一个简单的$ docker-compose up。终端的相应附件可以简单地为(假设yml已经指定了一个名为myservice的服务):
$ docker-compose exec myservice sh
但是,如果您正在使用不同的yml文件名,例如docker-compose-mycompose。是的,应该使用$ docker-compose -f docker-compose-mycompose来启动。yml。要附加一个交互式终端,你也必须指定yml文件,就像:
$ docker-compose -f docker-compose-mycompose.yml exec myservice sh