如何更新自定义的Python泊坞窗图像

我是新来的docker,所以不知道如何更新docker图像。 我有一个Python代码,我已经使用下面的命令创build了它的泊坞窗图像:

sudo docker build -t mycustomdocker . 

完成之后,我可以使用sudo docker images来查看我的泊sudo docker images 。 要运行它,我可以使用:

 sudo docker run --restart=always mycustomdocker 

这将启动它的容器,并始终重新启动,它将始终运行。

现在我想知道,例如,我已经更新了我的Python代码,并添加了一些新的function。 所以在更新Python代码之后,它的图像mycustomdocker自动更新,或者我们需要运行任何更新命令。 或者我们需要再次停止容器,然后删除现有的图像,并再次build立图像?

谢谢

这取决于你如何获取文件到容器。 如果您使用的是ADDCOPY那么是的,您需要停止正在运行的容器,重build图像然后重新启动。

但是,我们倾向于做的事情,以保持快速运行的东西是这样的:

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

然后当跑步

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

这将覆盖容器/something/src/文件中的任何/something/src/ ,无论您在本地./src/目录中,无需重build。 如果你想发布容器,或者从你工作的目录中的任何地方运行它,你将需要重新构build它。

阅读这篇关于良好存储实践的文章以获取更多信息。 也高度build议寻找docker-compose ,使这更容易,但这是超出了这个问题的范围。