docker 대신 nerdctl 사용하기

2025. 8. 10. 23:37k8s

nerdctl + BuildKit 개별 설치

VER=2.0.0
wget https://github.com/containerd/nerdctl/releases/download/v${VER}/nerdctl-${VER}-linux-amd64.tar.gz
sudo tar -C /usr/local/bin -xzf nerdctl-${VER}-linux-amd64.tar.gz
nerdctl --version

BK=v0.13.2
wget https://github.com/moby/buildkit/releases/download/${BK}/buildkit-${BK}.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf buildkit-${BK}.linux-amd64.tar.gz

BuildKit 데몬 systemd 등록

cat | sudo tee /etc/systemd/system/buildkit.service <<'EOF'
[Unit]
Description=BuildKit daemon
After=network.target
[Service]
ExecStart=/usr/local/bin/buildkitd --addr unix:///run/buildkit/buildkitd.sock
Restart=always
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable --now buildkit

확인

nerdctl pull busybox:latest
nerdctl tag busybox:latest registry.gift1000.co.kr/test:tiny
nerdctl push registry.gift1000.co.kr/test:tiny

# no cache 적용
sudo nerdctl build --no-cache --pull --progress=plain \
  -t registry.gift1000.co.kr/test:tiny