在后台运行Docker容器(分离模式)

本文介绍了运行容器的前台模式和后台模式,并说明了如何在后台模式下运行Docker容器。

Docker下 ,图像开发人员可以定义与分离或前台运行相关的图像默认值,以及其他有用的设置。 但是,使用docker run [OPTIONS]命令,您可以添加或覆盖开发人员设置的图像默认值,从而更好地控制容器的运行方式。

另请参阅ctop - 用于监控Docker容器的类似顶部的界面

在本文中,我们将简要介绍运行容器的前台模式后台模式 ,我们还将向您展示如何在分离模式下在后台运行Docker容器

前景模式(默认)vs背景/分离模式

在启动Docker容器之前,首先必须确定是要在默认前台模式下运行它还是在分离模式下在后台运行它。

前台模式下Docker可以在容器中启动进程,并将控制台连接到进程的标准输入,标准输出和标准错误。

还有命令行选项来配置它更多,例如-t为进程分配伪tty-i保持STDIN打开,即使没有附加。 您还可以使用-a=[value here]标志将其附加到一个或多个文件描述符( STDINSTDOUT和/或STDERR )。

重要的是, - --rm option告诉Docker在容器存在时自动删除它。 此示例显示如何以前台模式启动Docker容器:

# docker run --rm -ti -p 8000:80 -p 8443:443 --name pandorafms pandorafms/pandorafms:latest
在前台模式下运行Docker容器

在前台模式下运行Docker容器

前台运行容器的缺点是您无法再访问命令提示符,如上面的屏幕截图所示。 这意味着在容器运行时无法运行任何其他命令。

要在后台运行Docker容器,请使用use -d=true或just -d选项。 首先,按[Ctrl+C]将其从前台模式停止,然后以分离模式运行 ,如下所示:

# docker run -d --rm -p 8000:80 -p 8443:443 --name pandorafms pandorafms/pandorafms:latest
以分离模式运行Docker容器

以分离模式运行Docker容器

要列出所有容器,请运行以下命令(默认显示刚刚运行)。

# docker ps -a
列出所有正在运行的Docker容器

列出所有正在运行的Docker容器

此外,要重新连接到分离的容器,请使用docker attach命令。

# docker attach --name pandorafms
OR
# docker attach 301aef99c1f3

如果要停止上述容器或任何其他正在运行的容器,请使用以下命令(将301aef99c1f3替换为实际的容器ID)。

# docker stop 301aef99c1f3

您可能还想阅读以下相关的Docker文章。

  1. 在CentOS和RHEL 7/6中安装Docker和Learn Basic Container Manipulation - 第1部分
  2. 如何命名或重命名Docker容器
  3. 如何删除Docker镜像,容器和卷

而已! 在本文中,我们展示了如何在分离模式下在后台运行Docker容器。 使用下面的评论表格向我们提供反馈或询问有关本文的问题。