如何让docker容器永远运行

use*_*955 5 python docker dockerfile

我创建了一个 Dockerfile,它设置 python 环境,以便当人们在主机中运行映像时,他们可以运行我的 python 文件,而无需自己安装多个 python 包。

问题是在我构建并运行图像后,容器立即停止(因为它已完成)。

如何让容器永远运行?我的理解是,人们拉取并运行我的映像后,他们可以通过运行“python file.python”来开始运行 python 文件。

我的 Dockerfile 看起来像这样(可能不正确。我仍在学习):

FROM python:3-alpine
ADD . /app
WORKDIR /app
RUN pip install configparser
Run Code Online (Sandbox Code Playgroud)

Leb*_*cca 12

HOW TO KEEP DOCKER CONTAINERS RUNNING中我们可以知道,docker 容器在以分离模式(最常见的 -d 选项)运行时,被设计为在初始入口点命令(构建容器时应该运行的程序)后立即关闭来自图像)不再在前台运行。因此,即使内部程序已经完成,也要保持 docker 容器运行

  • CMD tail -f /dev/null只需将最后一行添加到 dockerfile

更重要的是我们应该了解docker的用途以及如何正确使用它。尝试使用 docker 作为宿主机中的应用程序的环境基础并不是一个好的选择,docker 被设计为与环境无关的应用程序运行。应用程序应通过 docker build 放置到 docker 镜像中,并在运行时在 docker 容器中运行。