【问题标题】:How to update Docker image when there is new image version?有新镜像版本时如何更新 Docker 镜像?
【发布时间】:2015-07-14 06:03:57
【问题描述】:

我目前正在运行官方的ghost Docker 镜像,并使用该镜像构建多个容器。

如果我想更新我的 Docker 镜像,我只需使用以下命令:

docker pull ghost
docker restart oldcontainer 

有用吗?

【问题讨论】:

    标签: docker


    【解决方案1】:

    。更新映像不会影响从该映像构建的映像,并且肯定不会影响从该映像创建的已经运行的容器。

    一个可能的工作流程是某事。像这样:

    1. 拉取新版本的基础镜像
    2. 在映像之上构建您自己的映像的新版本
    3. 从新建的映像中销毁并重新创建您自己的容器

    【讨论】:

    • 所以这意味着如果我有新图像,那么即使基于旧图像重新启动容器也行不通。
    • 正确。理想情况下,您将从(可能更新的)图像重新创建容器。这正是不鼓励将应用程序数据存储在 Docker 容器中的原因,顺便说一句。 (请参阅 VonC 关于该主题的答案中链接的答案)。
    • 非常感谢,helmbert
    【解决方案2】:

    docker restart 执行docker stop(或docker kill,如果停止超时),将容器置于退出状态,然后是docker start,它启动相同 容器。

    在该过程中根本没有检测到图像可能已更改的事实。

    删除并使用所有正确的参数执行完整的 docker run 会发现图像更改。见“How to upgrade docker container after its image changed

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-16
      • 1970-01-01
      • 2022-10-04
      • 1970-01-01
      • 2018-06-03
      相关资源
      最近更新 更多