BuildKit 구성하기
BuildKit 구성하기 (Configure BuildKit)
BuildKit 데몬의 동작을 구성하는 방법을 다뤄요. 빌드한 빌더가 사용할 BuildKit 설정 파일(buildkitd.toml)을 지정할 수 있어요.
출처: 문서
본문
레지스트리 미러 (Registry mirror)
레지스트리 미러를 구성하면 이미지 pull 요청을 미러로 돌릴 수 있어요. 다음 내용으로 구성 파일을 만들어요:
debug = true
[registry."docker.io"]
mirrors = ["mirror.gcr.io"]
debug = true는 BuildKit 데몬에서 디버그 요청을 켜서, 미러가 사용 중일 때 메시지를 로그로 남겨요.
이 BuildKit 구성을 사용하는 빌더를 만들어요:
$ docker buildx create --use --bootstrap \
--name mybuilder \
--driver docker-container \
--buildkitd-config /etc/buildkitd.toml
이미지를 빌드해요:
docker buildx build --load . -f - <<EOF
FROM alpine
RUN echo "hello world"
EOF
빌더 로그를 확인하면 미러가 사용된 HTTP 헤더를 볼 수 있어요:
$ docker logs buildx_buildkit_mybuilder0
...
time="2022-02-06T17:47:48Z" level=debug msg="do request" request.header.accept="application/vnd.docker.container.image.v1+json, */*" request.header.user-agent=containerd/1.5.8+unknown request.method=GET spanID=9460e5b6e64cec91 traceID=b162d3040ddf86d6614e79c66a01a577
time="2022-02-06T17:47:48Z" level=debug msg="fetch response received" response.header.accept-ranges=bytes response.header.age=1356 ...
이렇게 해서 미러가 실제로 사용되고 있는지 확인할 수 있어요. BuildKit 데몬 설정에 대한 더 자세한 옵션은 buildkitd.toml 구성 문서를 참고해요.