【问题标题】:How to update custom made python docker image如何更新定制的python docker镜像
【发布时间】:2018-06-03 18:30:35
【问题描述】:

我是码头工人的新手,所以真的不知道如何更新码头工人的形象。我有一个 python 代码,并使用以下命令创建了它的 docker 映像:

sudo docker build -t mycustomdocker .

完成后,我可以使用sudo docker images 看到我的 docker 映像。要运行它,我可以使用:

sudo docker run --restart=always mycustomdocker

这将启动其容器,并且始终重启,它将始终运行。

现在我想知道,例如,我已经更新了我的 python 代码并添加了一些新功能。所以更新python代码后,它的图像mycustomdocker会自动更新或者我们需要为它运行任何更新命令。?还是我们需要再次停止容器,然后删除现有镜像并重新构建镜像?

谢谢

【问题讨论】:

    标签: python docker containers


    【解决方案1】:

    这取决于您如何将文件传送到容器中。如果您使用的是ADDCOPY,那么是的,您需要停止正在运行的容器,重建映像,然后重新启动它。

    但是,为了让事情快速运行,我们倾向于做的是:

    # ...
    ADD ./src/ /something/src/
    # ...
    

    然后在运行时

    sudo docker run --volume ${PWD}/src/:/something/src/ --restart=always yourcontainer
    

    这将使用本地 ./src/ 目录中的任何内容覆盖容器 /something/src/ 文件中的所有内容,而无需重建。如果您确实想发布容器,或从您正在工作的目录以外的任何地方运行它,您将需要重新构建它。

    通读this article 了解良好存储实践以了解更多信息。还强烈建议查看docker-compose 以使其更容易,但这有点超出了这个问题的范围。

    【讨论】:

    • 我使用 Dockerfile 创建了 docker。 ADD ./src/ /something/src/ 你把它保存在 Dockerfile 中了吗?
    • 如果您计划分发图像,那么是的,您需要使用ADD 直接添加它们。卷只是临时替换容器内的目录。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-07-14
    • 1970-01-01
    • 1970-01-01
    • 2021-10-27
    • 2022-01-22
    • 2022-01-06
    • 2016-04-21
    相关资源
    最近更新 更多