d选项作为后台程序在后台运行docker应用程序

2020-11-20 09:14:40 来源: INeng财经

本快速教程介绍了如何使用docker-compose启动,停止,删除,重新启动以及查看docker容器应用程序的状态。如果您是Docker的新手,并且已经接管了已经运行了Docker应用程序的系统,则至少应了解如何进行维护。在管理复杂的多容器Docker应用程序时,docker-compose非常有用。

1.在后台启动Docker容器

应用程序的所有服务通常在docker-compose.yml文件下定义。在此yml文件中,您还将定义所有应用程序服务依赖项。

通常,当您执行docker-compose up时,它将下载并拉入适当的映像(如果未在服务器上本地缓存),然后将使用您的应用程序代码来构建映像,并最终以全部启动整个docker应用程序依赖关系。

有时,您可能还会有一个单独的Dockerfile,您将在其中指定如何构建特定映像。

首先,转到docker-compose.yml文件所在的目录,然后执行以下docker-compose up命令。

您会注意到,它只会在执行时第一次下载容器,此后,它将使用缓存的版本。您将不再在about输出中看到“ Pulling ..”行。

从下一次启动docker-compose时,您只会看到以下内容。

d选项作为后台程序在后台运行docker应用程序。这将使应用程序运行,直到您决定停止它为止。

在上面的示例输出中,它已启动以下服务:

数据库的mongo

用于Web服务器的Nginx

适用于应用服务器的tomcat

2.在前台启动Docker容器

如果不指定-d选项,则docker-compose将在前台启动所有服务。

当您调试Docker容器,映像或服务的任何与启动相关的问题时,这将很有帮助。在这种情况下,您可以直接在屏幕上查看所有日志消息。

在这种情况下,应用程序将启动并运行,直到您按Ctrl-C取消前台进程为止。

在这种情况下,按Ctrl-C等效于执行“ docker-compose stop”。因此,它将正常停止所有容器。

3.其他docker-compose启动选项

使用docker-compose up时,如果docker-compose.yml文件中有任何影响容器的更改,它们将停止并重新创建。

但是,您可以强制docker-compose不要停止并重新创建容器,您可以在docker-compose启动期间使用–no-recreate选项,如下所示。换句话说,如果容器已经存在,则不会重新创建它。

您也可以相反。即使docker-compose.yml中的内容未更改,以下内容也会强制重新创建容器。

您还可以指定超时值。默认值为10秒,但以下命令将使用30秒的超时值。

以下是一些可以与“ docker-compose up”一起使用的附加选项

–abort-on-container-exit如果停止任何容器,则将停止所有容器。您不能将此选项与-d一起使用,而必须单独使用此选项。

–no-deps这将不会启动任何链接的依赖服务。

–no-build即使图像丢失,也不会生成图像

–no-color在输出中,将不显示任何颜色。这将在屏幕上显示单色输出。

4.停止所有Docker容器

要停止在前台运行的Docker应用程序,只需按Ctrl-C即可,如上图所示。

但是,要停止在后台运行的Docker应用程序,请使用docker-compose stop,如下所示。

停止Docker应用程序容器有两个步骤:

首先,使用docker-compose stop停止正在运行的容器

其次,使用docker-compose rm -f删除停止的容器

使用docker-compose stop停止应用程序容器:

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。