如何更新官方存储库时更新docker镜像?
如何在更改DockerFile时更新自定义图像,或者Dockerfile包含时间敏感信息?
构建新图像或重建现有图像是更好的做法吗?
重建现有图像的最佳方法是什么?
区分同一图像的多个构建的最佳方法是什么?
答案 0 :(得分:19)
如何更新官方存储库时更新docker镜像?
如果您使用Docker Hub创建自动构建,那么您可以添加Repository Link,以便在链接的repo更新时重建您的repo。
如果您想自己进行构建,可以创建一个hacky变通方法,通过上面的链接获取通知并重建一个简单的repo,然后使用Web Hook通知构建系统更改。
如何在更改DockerFile时更新自定义图像,或者Dockerfile包含时间敏感信息?
如果您使用Docker Hub进行自动构建,那么对BitBucket或GitHub源代码库的更改(包括Dockerfile更改)将触发新构建。
如果你是building images yourself,只需在Dockerfile所在的目录中输入docker build .
即可。您可以使用--no-cache
强制进行全新的重建
构建新图像或重建现有图像是更好的做法吗?
这取决于谁在使用你的图像。当您build
时,结果始终是新图片,但结果如何tag
可以使其看起来像旧图片或新图片的替代品。
区分同一图像的多个构建的最佳方法是什么?
使用名称中的:tag
功能,例如
ubuntu:latest
ubuntu:12.04
ubuntu:14.04
...
请参阅https://registry.hub.docker.com/_/ubuntu/以获取" ubuntu"的所有变体的完整列表图片。有关友好图像名称的完整格式,请参阅tag
文档。所有标记和名称都是规范图像名称的别名,当您运行docker images --no-trunc
时,该字符串具有长UUID字符串。