【问题标题】:Can't jump into nginx docker container on startup启动时无法跳转到 nginx docker 容器
【发布时间】:2019-11-23 20:05:22
【问题描述】:

我可以使用以下命令启动并执行 ubuntu docker 容器:

$ docker container run -it --rm ubuntu
root@ded56bdb6f95:/#

但是,当我尝试对 nginx 服务器执行相同操作时,我得到一个空白控制台(尽管它确实在此处打印日志):

$ docker container run -it -p 81:80 --rm nginx
# this is blank

我可以通过在 nginx 服务器运行时运行附加命令来执行:

docker container exec -it CONTAINER_ID bash
root@6270d301d3fd:/#

知道我做错了什么或者这是预期的行为吗?

【问题讨论】:

  • 你能添加输出吗:docker ps -a 我认为你的图像名称有误
  • 您通常应该将容器想象为单个进程的包装器。就像在 Chrome/Firefox 浏览器中获取 shell 没有意义一样,在 Nginx 服务器中获取 shell 也没有意义,您应该保留交互式 shell 和 docker exec调试而不是日常使用。

标签: docker nginx containers tty docker-exec


【解决方案1】:

想通了,只需要在 docker run 命令的末尾添加 shell 的名称(例如 bashsh)即可:

docker container run -it -p 81:80 --rm nginx bash

【讨论】:

    猜你喜欢
    • 2014-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多