1

今天我尝试以分离模式运行我的容器,但遇到了一些问题。

当我运行命令docker container run -d nginx时,nginx 的图像被拉出,并且容器的输出没有显示,因为它处于分离模式。

然后我运行命令docker container ls我们都知道它只显示正在运行的容器,它显示我的 nginx 容器正在运行。 nginx 图像的图像

然后我用 ubuntu 镜像尝试了同样的事情,即 docker container run -d ubuntu但是当我运行docker container ls命令时,我的 ubuntu 镜像没有运行,只有 nginx 容器在运行。

ubuntu 图像的图像

为什么会这样?

4

1 回答 1

6

您看不到带有ubuntu映像的正在运行的容器,因为容器在启动后立即停止。当nginx映像启动一个保持容器运行的 nginx 服务器时,ubuntu映像sh -c "bash"在启动时执行 - bash 不是在执行后继续运行的进程。您将能够看到已停止ubuntu的容器docker ps -a

如果你想保持ubuntu容器运行,你需要向它传递一个命令来启动一个继续运行的进程,例如docker run -d ubuntu tail -f /dev/null

于 2019-02-09T14:41:57.067 回答