向Harbor推送镜像时遭遇500内部服务器错误求助
解决Harbor镜像仓库推送时500 Internal Server Error的问题
从你提供的kaniko详细错误信息可以定位核心问题:Err:28对应系统错误码ENOSPC(磁盘空间不足),Harbor所在服务器无法创建上传临时目录/storage/docker/registry/v2/repositories/myrepo/myproject/_uploads/511da2fa-5dd0-4b36-af02-0c2034eca0bb,导致推送操作触发500内部错误。拉取镜像正常是因为拉取仅需读取已有数据,无需写入新文件。
解决步骤:
检查磁盘使用情况:登录Harbor所在主机,执行命令查看磁盘占用:
df -h重点确认
/storage对应的磁盘分区是否已被占满。释放磁盘空间:
- 通过Harbor UI删除无人使用的镜像、标签;或停止Harbor服务后执行Registry垃圾回收:
docker-compose down docker run --rm -v /storage/docker/registry:/var/lib/registry registry:2 garbage-collect /etc/docker/registry/config.yml docker-compose up -d - 清理服务器临时文件、旧日志(比如
/var/log/目录),用du -sh /*定位大文件目录进行针对性清理。 - 若磁盘长期容量不足,考虑对挂载的存储分区进行扩容。
- 通过Harbor UI删除无人使用的镜像、标签;或停止Harbor服务后执行Registry垃圾回收:
验证修复效果:清理完成后重新执行
docker push,或触发CI/CD流水线,确认镜像推送功能恢复正常。
内容的提问来源于stack exchange,提问作者rajnuz
相关产品推荐
相关产品推荐

