빌더 관리하기

빌더 관리하기 (Manage builders)

docker buildx 명령이나 Docker Desktop을 사용해 빌더를 생성·검사·관리할 수 있어요.

출처: 문서

본문

docker buildx 명령이나 Docker Desktop을 사용해 빌더를 만들고, 검사하고, 관리할 수 있어요.

새 빌더 만들기 (Create a new builder)

기본 빌더는 docker 드라이버를 사용해요. 새 docker 빌더는 수동으로 만들 수 없지만, BuildKit 데몬을 컨테이너에서 실행하는 docker-container 드라이버 같은 다른 드라이버를 쓰는 빌더는 만들 수 있어요.

docker buildx create 명령으로 빌더를 만들어요.

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

--driver 플래그를 생략하면 Buildx는 기본적으로 docker-container 드라이버를 사용해요. 사용 가능한 드라이버에 대한 자세한 내용은 빌드 드라이버 문서를 참고하세요.

사용 가능한 빌더 나열하기 (List available builders)

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

빌더 이름 옆의 별표(*)는 현재 선택된 빌더를 나타내요.

빌더 검사하기 (Inspect a builder)

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

빌더 제거하기 (Remove a builder)

docker buildx remove 명령으로 빌더를 제거해요.

$ docker buildx rm <builder-name>

현재 선택된 빌더를 제거하면 기본 docker 빌더가 자동으로 선택돼요. 기본 빌더는 제거할 수 없어요.

빌더의 로컬 빌드 캐시도 함께 제거돼요.

원격 빌더 제거하기 (Removing remote builders)

원격 빌더를 제거해도 원격 빌드 캐시에는 영향이 없어요. 원격 BuildKit 데몬도 중지되지 않아요. 단지 그 빌더에 대한 여러분의 연결만 제거할 뿐이에요.

Docker Desktop으로 빌더 관리하기 (Manage builders with Docker Desktop)

Docker Desktop 빌드 뷰(Builds view)를 켜면 Docker Desktop 설정에서 빌더를 검사할 수 있어요.

더 알아보기 (Learn more)