Ubuntu更新后Docker拉取镜像失败:unpigz报zlib版本过低错误
问题诊断与解决建议
核心原因
unpigz: abort: zlib version less than 1.2.3的报错不是指向你安装的zlib1g-dev包,而是Docker在解压镜像层时调用的unpigz工具无法正确加载系统中的zlib库,或者Docker自身的组件与Ubuntu更新后的系统环境存在兼容性问题——内核降级无效也说明问题和内核版本无关。
排查与修复步骤
检查Docker版本兼容性
执行docker --version,如果你的Docker版本低于24.0.x,建议升级到Ubuntu官方仓库提供的最新稳定版:sudo apt update && sudo apt install --only-upgrade docker.io docker-compose旧版Docker可能无法适配Ubuntu 24.04(内核6.8对应的系统版本)的系统库环境。
验证系统unpigz的zlib依赖
先确认系统的unpigz关联的zlib库版本:ldd $(which unpigz) | grep zlib dpkg -S /lib/x86_64-linux-gnu/libz.so.1正常输出应该显示zlib版本为1.2.11,如果显示异常,重新安装pigz和zlib包:
sudo apt reinstall pigz zlib1g重启Docker服务并清理缓存
系统库更新后,Docker daemon可能仍在使用旧的缓存库,重启服务并清理无效缓存:sudo systemctl restart docker sudo docker system prune -a之后重新执行
docker pull alpine:latest尝试拉取镜像。
总结
此次Ubuntu更新的核心影响是系统库(或解压工具版本)变更后,Docker服务未适配新环境,而非内核升级导致的问题。通过升级Docker、修复系统依赖或重启服务即可解决。
内容的提问来源于stack exchange,提问作者mo bejani
相关产品推荐
相关产品推荐

