소개
Docker Buildx는 Docker Inc.가 제공하는 Docker CLI 플러그인으로, Moby BuildKit 빌더 툴킷의 확장된 빌드 기능을 docker build 명령에 그대로 담아 사용할 수 있도록 합니다. 익숙한 docker build 사용 경험을 유지하면서 다중 노드 빌드, 멀티 플랫폼 이미지 빌드 등 BuildKit의 고급 기능을 활용할 수 있게 해줍니다.
상세정보
docker build과 동일한 사용성
Buildx는 기존 docker build의 사용 경험을 그대로 제공하면서 출력 설정, 인라인 빌드 캐시, 대상 플랫폼 지정 등 docker build에서 지원하던 기능을 함께 제공합니다.
BuildKit의 고급 기능 지원
매니페스트 리스트 빌드, 분산 캐싱, OCI 이미지 tarball로 빌드 결과 내보내기 등 일반 docker build에서는 제공되지 않는 BuildKit 전용 기능을 함께 사용할 수 있습니다.
격리된 빌더 인스턴스 관리
docker buildx create로 새로운 빌더 인스턴스를 만들고, docker buildx inspect, stop, rm으로 생명 주기를 관리하며 docker buildx ls로 목록을 조회할 수 있습니다. docker buildx use 으로 빌더를 전환하면 이후 빌드 명령이 해당 빌더를 자동으로 사용합니다.
다중 드라이버 구성
빌드 실행 위치와 방식에 따라 docker, docker-container, cloud, kubernetes, remote 드라이버를 선택할 수 있으며, 각 드라이버는 서로 다른 기능 집합을 제공합니다.
멀티 플랫폼 이미지 빌드
–platform 플래그(예: linux/amd64, linux/arm64, darwin/arm64)로 대상 플랫폼을 지정할 수 있습니다. cloud, docker-container, kubernetes, remote 드라이버에서는 여러 플랫폼을 동시에 지정해 모든 아키텍처 이미지를 담은 매니페스트 리스트를 생성합니다. docker run이나 docker service에서 실행 시 노드 플랫폼에 맞는 이미지를 자동으로 선택합니다.
고수준 빌드와 Bake 지원
docker buildx bake 명령으로 여러 빌드 대상을 정의한 고수준 빌드를 수행할 수 있습니다.
Windows와 macOS
Docker Desktop에 Buildx가 포함되어 있어 별도 설치가 필요 없습니다.
Linux 패키지
Docker Engine 설치 절차에 따라 docker-buildx-plugin 패키지를 설치하면 됩니다.
수동 바이너리 다운로드
GitHub Releases 페이지에서 운영 체제에 맞는 바이너리를 받아 docker-buildx(Linux/macOS) 또는 docker-buildx.exe(Windows)로 이름을 변경한 뒤 적합한 폴더에 배치합니다.
- Linux/macOS(사용자 단위): $HOME/.docker/cli-plugins
- Linux(시스템 전역): /usr/local/lib/docker/cli-plugins, /usr/local/libexec/docker/cli-plugins, /usr/lib/docker/cli-plugins, /usr/libexec/docker/cli-plugins 중 하나
- Windows(사용자 단위): %USERPROFILE%.dockercli-plugins
- Windows(시스템 전역): C:Program FilesDockercli-plugins, C:ProgramDataDockercli-plugins(docker 28.x 이하 전용)
유닉스 환경에서는 chmod +x로 실행 권한을 부여해야 할 수 있습니다. 운영 환경에서는 자동 보안 업데이트가 제공되지 않으므로 수동 다운로드는 테스트 용도로 한정하는 것이 권장됩니다.
winget을 이용한 설치
Windows에서는 winget install –id Docker.Buildx –exact 명령으로 설치할 수 있습니다.
Docker Buildx와 docker build의 차이는 무엇인가요?
Docker Buildx는 docker build 사용 경험을 그대로 제공하면서 BuildKit의 매니페스트 리스트 빌드, 분산 캐싱, OCI 이미지 tarball 출력 같은 추가 기능을 함께 사용할 수 있도록 확장한 CLI 플러그인입니다.
어떤 Docker 버전이 필요한가요?
Docker Engine 19.03 이상에서 Buildx를 함께 사용하는 것이 권장되며, 그보다 낮은 버전에서는 Buildx 바이너리를 직접 호출해 docker buildx 서브커맨드에 접근해야 합니다.
시스템 요구사항
Docker Engine 19.03 이상이 필요하며, 호환되지 않는 버전을 사용하면 빌더 동작이 비정상적이거나 BuildKit 기능과 충돌이 발생할 수 있습니다. 수동 바이너리 설치 방식은 보안 업데이트가 자동으로 적용되지 않으므로 운영 환경에서는 권장되지 않으며, Docker Desktop 또는 배포판별 패키지 설치를 우선하는 것이 좋습니다.


