如何生成无压缩Docker镜像?解决目标机器解压速度过慢问题
生成无压缩Docker镜像的解决方法
首先确保使用Docker Buildx进行构建(传统
docker build不支持--output的压缩控制参数),先检查Buildx是否启用:docker buildx inspect --bootstrap若未启用,先执行初始化命令:
docker buildx create --use直接生成无压缩本地镜像的正确命令:
使用type=docker输出到本地Docker镜像存储,而非type=image(后者用于推送镜像仓库,部分仓库会自动重新压缩):docker buildx build --output type=docker,compression=uncompressed -t my-uncompressed-image:latest .备选方案:构建为无压缩tar包再导入
如果上述命令仍不生效,可先导出无压缩的tar包,再导入到Docker中:# 构建并导出无压缩tar包 docker buildx build --output type=tar,compression=uncompressed,dest=./uncompressed-image.tar . # 导入tar包为本地镜像 docker load -i uncompressed-image.tar验证镜像是否为无压缩状态:
执行以下命令,若返回报错则说明镜像未被压缩(符合预期):docker save my-uncompressed-image:latest | gzip -t也可对比镜像大小,无压缩镜像会比普通压缩镜像体积大很多。
内容的提问来源于stack exchange,提问作者zz yuan
相关产品推荐
相关产品推荐

