zoukankan      html  css  js  c++  java
  • (十七)VMware Harbor 垃圾清理

    1. 在线垃圾清理

    注意:从Harbor中删除镜像时不释放空间,垃圾收集是通过从清单中不再引用文件系统中删除blob来释放空间的任务。

    注意:在执行垃圾收集时,Harbor将进入只读模式,并且禁止对docker注册表进行任何修改。

    垃圾清理定时任务:

    1.无

    2.每天

    3.每周

    4.每小时

    5.自定义

    history

    显示垃圾回收记录

     

     离线-Harbor镜像删除空间回收

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

    1、首先,删除Harbor的UI中的存储库。这是软删除。您可以删除整个存储库或仅删除它的标签。软删除后,Harbour中不再管理存储库,但是存储库的文件仍然保留在Harbour的存储中。 

    2、接下来,使用注册表的垃圾回收(GC)删除存储库的实际文件。在执行GC之前,确保没有人推送图像或Harbour根本没有运行。如果有人在GC运行时推送镜像,则存在镜像层被错误删除的风险,从而导致镜像损坏。所以在运行GC之前,首选的方法是先停止Harbour。

    第一步:停止Harbor

    cd /usr/local/harbor
    docker-compose stop

    第二步: 
    在部署Harbour的主机上运行以下命令以预览会影响哪些文件/镜像 
    注:上述选项”–dry-run”将打印进度而不删除任何数据。

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

    验证上述测试的结果,然后使用以下命令执行垃圾回收并重新启动Harbour。

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

    3、重启harbor各组件镜像

    docker-compose start

    最后验证: 
    a:du -sh /data/registry/docker/registry/v2/blobs&repositories和之前该目录文件大小做对比 
    b:重新上传之前删除的镜像,如没成功删除会报镜像已存在,能成功上传则一切ok,恭喜 

    参考:https://www.tuicool.com/articles/2QVBvyA

    参考:https://blog.csdn.net/kong2030/article/details/81331142

    参考:http://www.itboth.com/d/U367Vz/docker

  • 相关阅读:
    前端
    小程序开发
    mpvue开发小程序
    (33)Vue购物车
    Vue的使用你学会了吗?
    (32)Vue模板语法
    (31)Vue安装
    (3)Angular的开发
    (2)Angular的开发
    (1)Angular的开发
  • 原文地址:https://www.cnblogs.com/shix0909/p/11113780.html
Copyright © 2011-2022 走看看