管理建置器

您可以使用 docker buildx 指令,或透過 Docker Desktop 來建立、檢查及管理構建器。

建立新構建器

預設構建器使用 docker 驅動程式。您無法手動建立新的 docker 構建器,但可以建立使用其他驅動程式的構建器,例如 docker-container 驅動程式,它會在容器中執行 BuildKit 常駐程式 (daemon)。

請使用 docker buildx create 指令來建立構建器。

$ docker buildx create --name=<builder-name>

如果您省略 --driver 旗標,Buildx 預設會使用 docker-container 驅動程式。有關可用驅動程式的更多資訊,請參閱構建驅動程式

列出可用構建器

使用 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

構建器名稱旁的星號 (*) 表示該構建器為已選取的構建器

檢查構建器

若要使用 CLI 檢查構建器,請使用 docker buildx inspect <name>。您只能在構建器處於作用中狀態時對其進行檢查。您可以在指令中加入 --bootstrap 旗標來啟動該構建器。

$ docker buildx inspect --bootstrap my_builder
[+] Building 1.7s (1/1) FINISHED                                                                  
 => [internal] booting buildkit                                                              1.7s
 => => pulling image moby/buildkit:buildx-stable-1                                           1.3s
 => => creating container buildx_buildkit_my_builder0                                        0.4s
Name:          my_builder
Driver:        docker-container
Last Activity: 2023-06-21 18:28:37 +0000 UTC

Nodes:
Name:      my_builder0
Endpoint:  unix:///var/run/docker.sock
Status:    running
Buildkit:  v0.11.6
Platforms: linux/arm64, linux/amd64, linux/amd64/v2, linux/riscv64, linux/ppc64le, linux/s390x, linux/386, linux/mips64le, linux/mips64, linux/arm/v7, linux/arm/v6

如果您想查看構建器佔用了多少磁碟空間,請使用 docker buildx du 指令。此指令預設會顯示所有可用構建器的總磁碟使用量。若要查看特定構建器的使用量,請使用 --builder 旗標。

$ docker buildx du --builder my_builder
ID                                        RECLAIMABLE SIZE        LAST ACCESSED
olkri5gq6zsh8q2819i69aq6l                 true        797.2MB     37 seconds ago
6km4kasxgsywxkm6cxybdumbb*                true        438.5MB     36 seconds ago
qh3wwwda7gx2s5u4hsk0kp4w7                 true        213.8MB     37 seconds ago
54qq1egqem8max3lxq6180cj8                 true        200.2MB     37 seconds ago
ndlp969ku0950bmrw9muolw0c*                true        116.7MB     37 seconds ago
u52rcsnfd1brwc0chwsesb3io*                true        116.7MB     37 seconds ago
rzoeay0s4nmss8ub59z6lwj7d                 true        46.25MB     4 minutes ago
itk1iibhmv7awmidiwbef633q                 true        33.33MB     37 seconds ago
4p78yqnbmgt6xhcxqitdieeln                 true        19.46MB     4 minutes ago
dgkjvv4ay0szmr9bl7ynla7fy*                true        19.24MB     36 seconds ago
tuep198kmcw299qc9e4d1a8q2                 true        8.663MB     4 minutes ago
n1wzhauk9rpmt6ib1es7dktvj                 true        20.7kB      4 minutes ago
0a2xfhinvndki99y69157udlm                 true        16.56kB     37 seconds ago
gf0z1ypz54npfererqfeyhinn                 true        16.38kB     37 seconds ago
nz505f12cnsu739dw2pw0q78c                 true        8.192kB     37 seconds ago
hwpcyq5hdfvioltmkxu7fzwhb*                true        8.192kB     37 seconds ago
acekq89snc7j6im1rjdizvsg1*                true        8.192kB     37 seconds ago
Reclaimable:  2.01GB
Total:        2.01GB

刪除構建器

使用 docker buildx remove 指令來刪除構建器。

$ docker buildx rm <builder-name>

如果您刪除了目前選取的構建器,系統會自動選取預設的 docker 構建器。您無法刪除預設構建器。

該構建器的本地構建快取也會一併刪除。

刪除遠端構建器

刪除遠端構建器不會影響遠端構建快取,也不會停止遠端 BuildKit 常駐程式。它僅會移除您與該構建器的連線。

使用 Docker Desktop 管理構建器

如果您已啟用 Docker Desktop Builds 檢視,則可以在 Docker Desktop 設定中檢查構建器。

© . This site is unofficial and not affiliated with Kubernetes or Docker Inc.