发布于 2020-09-10 19:27:17
由于Docker映像的多个体系结构/平台标记具有不同的摘要,所以可以使用使用文件摘要提取码头形象 (而不是使用标记)来提取所需的体系结构/平台。
下面是码头枢纽中一个Docker映像(Ubuntu)的多体系结构/平台标记的示例:

如您所见,20.04是一个多体系结构标记,标记中的每个体系结构都有不同的摘要。
如果您运行命令docker pull ubuntu:20.04,它将提取所有的体系结构。
但指挥
docker pull ubuntu@sha256:55e5613c8c7bcd8044aaf09d64d20518964a0d7a6e41af129f95b731301c2659只会拉linux/arm/v7。
正如我尝试过的那样,可以在.gitlab-ci.yml中使用摘要
job_1:
image: ubuntu@sha256:55e5613c8c7bcd8044aaf09d64d20518964a0d7a6e41af129f95b731301c2659
script:
- ...
job_2:
image: alpine@sha256:71465c7d45a086a2181ce33bb47f7eaef5c233eace65704da0c5e5454a79cee5
script:
- ...发布于 2020-10-25 00:08:08
谈到图像摘要,GitLab 13.5 (2020年10月)建议:
在新标签上创建带有图像摘要的发行版 Docker支持不可变的映像标识符,我们已经采用了这个最佳实践来更新云部署映像。 当一个新的图像被标记时,我们也会在其构建时以编程的方式检索图像摘要,并创建一个发行说明,以便有效地将该摘要传递给用户。 这保证了服务的每个实例都运行完全相同的代码。 您可以回滚到早期版本的图像,即使该版本没有标记(或不再标记)。这甚至可以防止在部署过程中推送新映像的竞争条件。

https://stackoverflow.com/questions/63833973
复制相似问题