內聯快取

inline 快取儲存後端是獲取外部快取最簡單的方式,如果您已經構建並推送了映象,則易於開始使用。

內聯快取的缺點是它不像其他驅動那樣能夠很好地擴充套件多階段構建。它也不提供輸出工件和快取輸出之間的分離。這意味著如果您正在使用特別複雜的構建流程,或者沒有直接將映象匯出到登錄檔,那麼您可能需要考慮使用 registry 快取。

概要

$ docker buildx build --push -t <registry>/<image> \
  --cache-to type=inline \
  --cache-from type=registry,ref=<registry>/<image> .

inline 快取不支援其他引數。

要使用 inline 儲存匯出快取,請將 type=inline 傳遞給 --cache-to 選項。

$ docker buildx build --push -t <registry>/<image> \
  --cache-to type=inline .

或者,您也可以透過設定構建引數 BUILDKIT_INLINE_CACHE=1 來匯出內聯快取,而不是使用 --cache-to 標誌。

$ docker buildx build --push -t <registry>/<image> \
  --build-arg BUILDKIT_INLINE_CACHE=1 .

要在未來的構建中匯入生成的快取,請將 type=registry 傳遞給 --cache-from,這允許您從指定登錄檔中的 Docker 映象內部提取快取。

$ docker buildx build --push -t <registry>/<image> \
  --cache-from type=registry,ref=<registry>/<image> .

進一步閱讀

有關快取的介紹,請參閱 Docker 構建快取

有關 inline 快取後端的更多資訊,請參閱 BuildKit README