这里有Docker:https://github.com/moby/buildkit/blob/master/frontend/dockerfile/docs/experimental.md,它对RUN有一个额外的选项(以及其他选项):--mount=type=cache。
我从文档中找不到的是:
,
发布于 2021-03-31 15:06:46
是的,在船坞20.10.5中有点模糊。可以使用一两次拉请求来更新文档。
/var/lib/docker/buildkit的数据库中。当使用overlay2驱动程序时,层本身位于/var/lib/docker/overlay2/<ID>/diff/中。有关<ID>,请参见下面的内容。根据您的configuration.docker buildx du --verbose列表生成缓存中的data-root,/var/lib/docker可能有所不同。您还可以从docker system df -v --format '{{ .BuildCache | json }}'检查它。缓存类型exec.cachemount是RUN --mount type=cache。您可以使用ID找到该层,这与在--mount id中使用的不同。挂载类型是由buildkit实现的,因此docker run --mount不识别它。要摆脱它,无论是docker build --no-cache.docker buildx prune缓存键都是id=的值。id默认为target值。在同一target.id。不管target或Dockerfile如何,它们都是相同的缓存。不同的构建程序有自己的缓存,例如,对于不同的体系结构,缓存是分开的。发布于 2020-07-10 13:40:19
对于#3,当您不为--mount选项指定一个--mount时,将使用相同的缓存,而不考虑任何其他参数,例如挂载点或Dockerfile内容/路径。
https://stackoverflow.com/questions/62834806
复制相似问题