在dockerfile和docker-compose中,您可以按摘要使用图像。
好处是增加了安全性。如果您拉出的图片标签已更改,则docker将拒绝它。
问题在于,您无法在多个体系结构中使用同一文件。
我想使用多体系结构映像(用于amd64和aarch64(arm64v8)),并以某种方式在单个Dockerfile和单个docker-compose.yaml中指定一组可接受的摘要(每个拱形一个)。
有可能吗?
现在我有不同的Dockerfile(amd64.Dockerfile和aarch64.Dockerfile),每个都有自己的摘要(对于yaml撰写文件也是如此),但是我不喜欢它,因为我重复了很多代码,这是错误的,并导致维护问题:
################################################################################
ARG tag="1.19.0-alpine"
ARG digest="sha256:ee5a9b68e8d4a4b8b48318ff08ad5489bd1ce52b357bf48c511968a302bc347b"
################################################################################
FROM "nginx:${tag}@${digest}" AS nginx
################################################################################
对于每个文件,我只更改摘要(现在)。