docker - Docker构建状态

标签 docker dockerfile

我有一个关于docker的存在性问题。鉴于此dockerfile:

FROM someImage
MAINTAINER abc
ENV something=somehow
RUN sh calculatePi.sh
ENV somethingElse=somehow2

“计算Pi”是一个永无休止的程序,需要在后台运行。它计算PI的所有数字(3.1415 .....),并将其保存到txt文件中。

我的问题:
  • 这个dockerfile甚至合理吗?
  • 如果是,当我基于该图像运行容器时,保存状态是什么?换句话说,如果我打开txt文件,将会看到什么?
  • 最佳答案

    Docker构建镜像时,Dockerfile中的每条指令都在临时容器中执行,该容器从前面的镜像层开始运行。因此,如果您的calculatePi.sh无限运行,那么您的图像将永远无法建立-它将停留在RUN指令上等待其完成。

    实际上,如果您尝试构建磁盘或CPU资源,则很有可能会最大化磁盘或CPU资源并关闭计算机。无论哪种方式,您都不会获得可以运行的完整镜像。

    关于docker - Docker构建状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39725152/

    相关文章:

    Docker - 镜像操作系统 "windows"无法在此平台上使用

    ubuntu - 在 docker build 的一个步骤中在容器中运行后台进程

    docker - 如何将文件复制到docker容器中的主机挂载目录

    python - 在 docker 容器中运行时 Python 中的 SFTP key 错误

    linux - 无法连接到 docker 容器外部的 oracle :12. 1.0.2

    docker - nodemon不使用docker进行充值

    postgresql - postgresql容器的数据保存在哪里,还有容器的位置在哪里?

    c - 用于查找容器内部容器名称的 C 程序 - LXC

    Docker copy 命令从目标文件夹复制 jar 文件

    angularjs - 如何在 Dockerfile 中运行 Bower install?