下载buildkit
wget https://github.com/moby/buildkit/releases/download/v0.11.6/buildkit-v0.11.6.linux-amd64.tar.gz
mkdir /usr/local/buildkit
tar -xf buildkit-v0.11.6.linux-amd64.tar.gz -C /usr/local/buildkit
修改PATH环境变量
echo 'export PATH=/usr/local/buildkit/bin:$PATH' >> /etc/profile
source /etc/profile
创建buildkitd自启动服务
cat <<EOF > /usr/lib/systemd/system/buildkitd.service
[Unit]
Description=buildkitd
After=network.target
[Service]
ExecStart=/usr/local/buildkit/bin/buildkitd
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl start buildkitd
systemctl enable buildkitd
使用buildctl 打包镜像
编写一个Dockerfile
FROM alpine
RUN echo "built with BuildKit!" > file
CMD ["/bin/sh"]
使用上面的Dockerfile构建镜像
buildctl build \
--frontend=dockerfile.v0 \
--local context=. \
--local dockerfile=. \
--output type=docker,name=myimage,dest=out.tar
[root@master ~]
out.tar
ctr -n test image import out.tar
[root@master ~]
REF TYPE DIGEST SIZE PLATFORMS LABELS
docker.io/library/myimage:latest application/vnd.docker.distribution.manifest.v2+json sha256:27817447c583499d123a6a84880f04219bc201042b2ca723587a769151e2dece 3.2 MiB linux/amd64 -
[root@master ~]
参考文档