docker提交没有运行

当我运行docker build . 吐出来的ID就是这个形象,这正是我认为正在致力于docker回购的原因。 但是,当我运行docker commit <id> ,它说,它不是一个有效的容器ID。 我通常通过在容器中启动图像然后提交该ID来解决这个问题。 但是,如果容器需要链接的容器运行,我该怎么办? 运行容器可能需要很长时间,特别是当构build过程在运行脚本中时。 如果失败或需要链接的容器成功,过程将退出,并且我的容器将closures,这不允许我创build新的映像。 有没有办法build立你的dockerfile并同时提交回购? 备择scheme?

Dockerfile旨在提供完全独立于主机的方式来重复构build映像,而不依赖于主机configuration的任何方面。 这就是为什么链接不包含在单个构build步骤中的原因,因为在构build时,构build依赖于主机上的其他容器。 由于这个Dockerfiles不是构build容器的唯一方法。

当你必须拥有一个依赖于主机的构build环境时,使用一个Dockerfile作为基础部分,安装依赖关系等等,然后使用你select的脚本/configurationpipe理系统的docker run来设置其他的容器并且执行实际的构build。 构build完成后,您可以提交生成的容器,使用名称对其进行标记,然后将其推送到回购站。

为了解决这个post顶部的问题,如果你想给一个Dockerfile生成的图像命名,可以使用docker docker tag image-id name

  • 提交需要一个容器并生成一个图像
  • 标记需要一个图像,并给它一个名字
  • 推着把一个图像作为一个名字,并使之后可用。