建構器

建置器是一個 BuildKit 常駐程式,您可以使用它來執行您的建置。BuildKit 是一個建置引擎,可以解決 Dockerfile 中的建置步驟,以產生容器映像檔或其他構件。

您可以建立和管理建置器、檢查它們,甚至連線到遠端執行的建置器。您可以使用 Docker CLI 與建置器互動。

預設建置器

Docker Engine 會自動建立一個建置器,成為您建置的預設後端。此建置器使用與常駐程式捆綁在一起的 BuildKit 函式庫。此建置器不需要任何設定。

預設建置器直接繫結到 Docker 常駐程式及其上下文。如果您變更 Docker 上下文,您的 `default` 建置器將參考新的 Docker 上下文。

建構驅動程式

Buildx 實作了建置驅動程式的概念,以參考不同的建置器組態。常駐程式建立的預設建置器使用 `docker` 驅動程式

Buildx 支援下列建置驅動程式

  • `docker`:使用捆綁到 Docker 常駐程式中的 BuildKit 函式庫。
  • `docker-container`:使用 Docker 建立專用的 BuildKit 容器。
  • `kubernetes`:在 Kubernetes 叢集中建立 BuildKit Pod。
  • `remote`:直接連線到手動管理的 BuildKit 常駐程式。

選取的建置器

選取的建置器是指您執行建置指令時預設使用的建置器。

當您執行建置,或使用 CLI 以某種方式與建置器互動時,您可以使用選用的 `--builder` 旗標,或 `BUILDX_BUILDER` 環境變數,按名稱指定建置器。如果您未指定建置器,則會使用選取的建置器。

使用 `docker buildx ls` 指令來查看可用的建置器執行個體。建置器名稱旁邊的星號 (`*`) 表示選取的建置器。

$ docker buildx ls
NAME/NODE       DRIVER/ENDPOINT      STATUS   BUILDKIT PLATFORMS
default *       docker
  default       default              running  v0.11.6  linux/amd64, linux/amd64/v2, linux/amd64/v3, linux/386
my_builder      docker-container
  my_builder0   default              running  v0.11.6  linux/amd64, linux/amd64/v2, linux/amd64/v3, linux/386

選擇不同的建置器

若要在建置器之間切換,請使用 `docker buildx use <name>` 指令。

執行此指令後,當您叫用建置時,系統會自動選取您指定的建置器。

其他資訊