使用 Docker Compose 的交互式 shell

新手上路,请多包涵

有没有办法仅使用 Docker Compose 在容器中启动交互式 shell?我在 docker-compose.yml 中尝试过类似的方法:

 myapp:
  image: alpine:latest
  entrypoint: /bin/sh

当我使用 docker-compose up 启动这个容器时,它会立即退出。是否有任何标志可以添加到 entrypoint 命令,或者作为 myapp 的附加选项,以启动交互式 shell?

我知道有本地 docker 命令选项可以实现这一点,只是好奇是否也可以仅使用 Docker Compose。

原文由 drubb 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.4k
1 个回答

您需要在 docker-compose.yml 中包含以下几行:

 version: "3"
services:
  app:
    image: app:1.2.3
    stdin_open: true # docker run -i
    tty: true        # docker run -t

第一个对应于 -idocker run 和第二个对应 -t

原文由 Leon Carlo Valencia 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题