1.在使用Jenkins发版操作时发现,推送私有仓库harbor报错:

received unexpected HTTP status: 500 Internal Server Error

2.想要登陆harbor查看,发现harbor界面登陆报错:登陆校验失败

3.登陆服务器,查看harbor的日志,在redis.log中找到报错信息

提示磁盘爆满

4.登陆ranchar,发现rancher也挂掉了,执行:docker ps -a |grep ranchar ,拿到ranchar的容器id,执行:docker logs --tail=200 ranchar容器id 查看ranchar的日志

当时忘了截图了。。

总之也提示磁盘已满

5.查看磁盘使用情况,执行:df -h

发现/home目录已满

6.进入home目录下,执行:du -hs *| sort -h,发现harbor占比最大,然后一路找下去,发现是harbor的/registry/docker/registry 占比最大

至此,已能判断出是harbor的镜像占用内存过大,导致磁盘爆满

7.停止harbor,防止在删除镜像过程中有人在上传镜像,导致镜像的图层不全

docker-compose stop

8.预览运行效果

docker run -it --name gc --rm --volumes-from registry vmware/registry:2.6.2-photon garbage-collect --dry-run /etc/registry/config.yml

9.删除相关文件和镜像

docker run -it --name gc --rm --volumes-from registry vmware/registry:2.6.2-photon garbage-collect  /etc/registry/config.yml

10.启动harbor

docker-compose start

至此,harbor已经可以登录,上传镜像发版也没有问题了

 

harbor磁盘爆满,执行垃圾回收清理镜像的更多相关文章

  1. 面试题:JS如何最快的执行垃圾回收机制

    因为没看见答案,所以也不知道对不对. JavaScript 的垃圾回收机制是由 JavaScript 引擎自动管理的,通常情况下我们无法控制垃圾回收机制的执行时间和频率. 然而,我们可以采取一些优化策 ...

  2. Harbor私有仓库中如何彻底删除镜像释放存储空间?

    简介: Harbor私有仓库运行一段时间后,仓库中存有大量镜像,会占用太多的存储空间.直接通过Harbor界面删除相关镜像,并不会自动删除存储中的文件和镜像.需要停止Harbor服务,执行垃圾回收命令 ...

  3. JVM(四)垃圾回收的实现算法和执行细节

    全文共 1890 个字,读完大约需要 6 分钟. 上一篇我们讲了垃圾标记的一些实现细节和经典算法,而本文将系统的讲解一下垃圾回收的经典算法,和Hotspot虚拟机执行垃圾回收的一些实现细节,比如安全点 ...

  4. docker registry 删除镜像 垃圾回收

    操作步骤 通过环境变量修改默认配置,允许删除 获取image的sha值 进入registry容器中,执行垃圾回收 删除残留目录 #环境变量 REGISTRY_STORAGE_DELETE_ENABLE ...

  5. 配置Kubelet的垃圾回收

    文章转载自:https://www.kuboard.cn/learning/k8s-advanced/gc.html Kubelet的垃圾回收功能可以清理不再使用的容器和镜像,kubelet对容器进行 ...

  6. Clr Via C#读书笔记---垃圾回收机制

    #1 垃圾回收平台的基本工作原理: 访问一个资源所需的具体步骤: 1)调用IL指令newobj,为代表资源的类型分配内存.在C#中使用new操作符,编译器就会自动生成该指令.2)初始化内存,设置资源的 ...

  7. [转载] java垃圾回收机制

    转载自http://blog.csdn.net/randyjiawenjie/article/details/7551228 http://www.daniel-journey.com/archive ...

  8. Docker registry垃圾回收

    Docker registry垃圾回收 通过: docker run -p 5000:5000 -v /netdata/xxxx/registry:/var/lib/registry registry ...

  9. 重温CLR(十五) 托管堆和垃圾回收

    本章要讨论托管应用程序如何构造新对象,托管堆如何控制这些对象的生存期,以及如何回收这些对象的内存.简单地说,本章要解释clr中的垃圾回收期是如何工作的,还要解释相关的性能问题.另外,本章讨论了如何设计 ...

  10. Java进阶 JVM 内存与垃圾回收篇(一)

    JVM 1. 引言 1.1 什么是JVM? 定义 Java Vritual Machine - java 程序的运行环境(Java二进制字节码的运行环境) 好处 一次编译 ,到处运行 自动内存管理,垃 ...

随机推荐

  1. 【Linux】11 RPM & YUM 管理工具 介绍

    rpm包的管理 介绍: 一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中. 它生成具有.RPM扩展名的文件.RPM是RedHat Package Manager(RedHat软件包 ...

  2. 【Vue】Re18 Router 第五部分(KeepAlive)

    一.KeepAlive概述 默认状态下,用户点击新的路由时,是访问新的组件 那么当前组件是会被销毁的,然后创建新的组件对象出来 如果某些组件频繁的使用,将造成内存空间浪费,也吃内存性能 所以需求是希望 ...

  3. 三.mysql问答合集

    目录 三.MySQL 3.1 关系型和非关系型数据库的区别 关系型数据库 非关系型数据库 3.2 登录数据库的方式,如何远程登录 3.3 MySQL的服务结构,当客户端发起请求后,处理过程 3.4 如 ...

  4. 【转载】 四轴PID算法:单环和串级

    原文地址: http://m.elecfans.com/article/1122372.html --------------------------------------------------- ...

  5. 关于python:pip安装选项“ ignore-installed”和“ force-reinstall”之间的区别

    参考: https://www.codenong.com/51913361/ ==================================================== 官方文档解释: ...

  6. 【转载】failed to open /dev/dri/renderd128 permission denied

    原文地址: https://juejin.cn/s/failed%20to%20open%20%2Fdev%2Fdri%2Frenderd128%20permission%20denied ===== ...

  7. Ambiguous Mapping 的处理方法

    出现原因:两个不同的Controller 中出现相同映射路径 eg: AController:/v1/wdnmd/userList/list BController:/v1/wdnmd/userLis ...

  8. Java学习笔记2--JDK的安装和配置

    一.进入oracle官网,下载jdk oracle官网:Oracle | Cloud Applications and Cloud Platform ps:不同的浏览器,可能进入oracle官网,会只 ...

  9. SQL Server序列号的获取

    建表: 1 USE [JX_IMS_CPK] 2 GO 3 4 SET ANSI_NULLS ON 5 GO 6 7 SET QUOTED_IDENTIFIER ON 8 GO 9 10 CREATE ...

  10. 20-canvas之形变

    1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="U ...