소개
이 랩에서는 docker buildx inspect 명령을 사용하여 Docker 빌더 인스턴스에 대한 세부 정보를 확인하는 방법을 배우게 됩니다. 먼저 현재 빌더 인스턴스를 검사한 다음, 이름으로 빌더를 지정하는 방법을 배우게 됩니다.
또한 --bootstrap 플래그를 사용하여 검사 전에 빌더가 실행 중인지 확인하는 방법과 --debug 플래그를 사용하여 더 자세한 정보를 얻는 방법을 탐구하여 빌더의 구성 및 상태에 대한 포괄적인 이해를 얻게 됩니다.
현재 빌더 인스턴스 검사
이 단계에서는 현재 Docker 빌더 인스턴스를 검사하는 방법을 배우게 됩니다. Docker 빌더는 Docker 이미지를 빌드하는 역할을 합니다. 빌더를 검사하여 구성 및 상태에 대한 정보를 얻을 수 있습니다.
먼저, 빌더 이름을 지정하지 않고 docker buildx inspect 명령을 사용해 보겠습니다. 이렇게 하면 현재 빌더 인스턴스가 검사됩니다.
docker buildx inspect
기본 빌더 인스턴스에 대한 세부 정보를 보여주는 다음과 유사한 출력을 볼 수 있습니다.
Name: default
Driver: docker
Nodes:
default:
Status: running
Buildkitd:
Version: v0.10.5
Platforms:
- linux/amd64
- linux/arm64
- linux/riscv64
- linux/ppc64le
- linux/s390x
- linux/386
- linux/arm/v7
- linux/arm/v6
출력은 빌더의 이름, 사용 중인 드라이버 (이 경우 docker), 빌드 노드에 대한 세부 정보 (상태, BuildKitd 버전 및 지원되는 플랫폼 포함) 와 같은 정보를 제공합니다.
이름으로 특정 빌더 인스턴스 검사
이전 단계에서는 현재 빌더 인스턴스를 검사했습니다. 이 단계에서는 이름으로 특정 빌더 인스턴스를 검사하는 방법을 배우게 됩니다. 처음에는 기본 빌더만 있을 수 있지만, 여러 빌더가 구성된 경우 이름을 지정하는 방법을 아는 것이 유용합니다.
특정 빌더 인스턴스를 검사하려면 docker buildx inspect 명령 다음에 빌더의 이름을 사용합니다. 기본 빌더는 일반적으로 default로 이름이 지정됩니다.
default 빌더를 이름으로 명시적으로 검사해 보겠습니다.
docker buildx inspect default
이전 단계와 동일한 출력을 볼 수 있으며, default 빌더 인스턴스를 검사하고 있음을 확인할 수 있습니다.
Name: default
Driver: docker
Nodes:
default:
Status: running
Buildkitd:
Version: v0.10.5
Platforms:
- linux/amd64
- linux/arm64
- linux/riscv64
- linux/ppc64le
- linux/s390x
- linux/386
- linux/arm/v7
- linux/arm/v6
이것은 이름을 사용하여 검사를 위해 특정 빌더 인스턴스를 타겟팅하는 방법을 보여줍니다.
--bootstrap 옵션으로 검사하기 전에 빌더가 실행 중인지 확인
이 단계에서는 docker buildx inspect와 함께 --bootstrap 플래그를 사용하는 방법을 배우게 됩니다. --bootstrap 플래그는 검사를 시도하기 전에 빌더 인스턴스가 실행 중인지 확인합니다. 빌더가 실행 중이지 않으면 이 플래그가 시작합니다.
기본 빌더는 일반적으로 실행 중이지만, 검사 또는 기타 빌드 작업을 수행하기 전에 빌더가 활성 상태임을 보장하려면 --bootstrap을 사용하는 것이 좋습니다.
이번에는 --bootstrap 플래그를 사용하여 기본 빌더를 다시 검사해 보겠습니다.
docker buildx inspect --bootstrap default
이전과 동일한 검사 출력을 볼 수 있습니다. --bootstrap 플래그는 검사가 수행되기 전에 빌더가 실행 중인 상태인지 확인합니다. 빌더가 중지된 경우 이 명령은 먼저 빌더를 시작했을 것입니다.
Name: default
Driver: docker
Nodes:
default:
Status: running
Buildkitd:
Version: v0.10.5
Platforms:
- linux/amd64
- linux/arm64
- linux/riscv64
- linux/ppc64le
- linux/s390x
- linux/386
- linux/arm/v7
- linux/arm/v6
--bootstrap을 사용하는 것은 빌드를 진행하기 전에 빌더가 준비되었는지 확인해야 하는 스크립팅 또는 자동화된 워크플로우에서 특히 유용합니다.
--debug 옵션으로 상세 정보 보기
이 마지막 단계에서는 docker buildx inspect와 함께 --debug 플래그를 사용하여 빌더 인스턴스에 대한 더 자세한 정보를 얻는 방법을 배우게 됩니다. --debug 플래그는 문제 해결 또는 빌더의 구성을 더 자세히 이해하는 데 도움이 될 수 있는 추가 출력을 제공합니다.
이번에는 --debug 플래그를 포함하여 기본 빌더를 다시 검사해 보겠습니다.
docker buildx inspect --debug default
표준 검사 출력을 볼 수 있지만, 그 앞에 디버그 로그가 표시됩니다. 이러한 로그는 buildx inspect 명령의 내부 작업과 BuildKit 데몬과의 통신에 대한 통찰력을 제공합니다.
디버그 출력에는 프로세스에 대한 자세한 정보가 뒤따르는 DEBU[...로 시작하는 줄이 포함됩니다. 여기에는 수행되는 API 호출, 구성 로딩 및 기타 내부 작업과 같은 내용이 포함될 수 있습니다.
DEBU[0000] loading config file /home/labex/.docker/config.json
DEBU[0000] Looking for builder "default"
DEBU[0000] found builder "default"
DEBU[0000] loading builder "default"
DEBU[0000] found 1 node(s) for builder "default"
DEBU[0000] loading node "default"
DEBU[0000] connecting to docker
DEBU[0000] running buildkitd container "buildx_buildkit_default"
DEBU[0000] buildkitd container "buildx_buildkit_default" is running
DEBU[0000] connecting to buildkitd
DEBU[0000] buildkitd connection successful
Name: default
Driver: docker
Nodes:
default:
Status: running
Buildkitd:
Version: v0.10.5
Platforms:
- linux/amd64
- linux/arm64
- linux/riscv64
- linux/ppc64le
- linux/s390x
- linux/386
- linux/arm/v7
- linux/arm/v6
--debug 플래그는 문제를 진단하거나 docker buildx가 기본 BuildKit 서비스와 상호 작용하는 방식을 더 깊이 이해하는 강력한 도구입니다.
요약
이 랩에서는 docker buildx inspect 명령을 사용하여 Docker 빌더 인스턴스에 대한 세부 정보를 보는 방법을 배웠습니다. 먼저 이름을 지정하지 않고 현재 빌더 인스턴스를 검사하여 시작했는데, 이는 일반적으로 기본 빌더에 대한 정보를 표시합니다. 그런 다음 이름을 제공하여 특정 빌더 인스턴스를 명시적으로 검사하는 방법을 배웠으며, 이를 통해 기본 빌더에 대한 동일한 세부 정보를 얻을 수 있음을 확인했습니다.
이러한 단계는 빌더의 이름, 드라이버, 노드 상태, BuildKitd 버전 및 지원되는 플랫폼을 포함하여 Docker 빌드 환경에 대한 통찰력을 얻기 위한 docker buildx inspect의 기본 사용법을 보여주었습니다.



