1. 程式人生 > 其它 >Harbor磁碟爆滿,執行垃圾回收清理映象

Harbor磁碟爆滿,執行垃圾回收清理映象

#!/bin/bash
set -e
set -u

# check disk
df -h | grep data

# stop harbor
docker-compose -f /opt/harbor/docker-compose.yml down

# setting harbor
mv /opt/harbor/docker-compose.yml /opt/harbor/docker-compose.yml.common
mv /opt/harbor/docker-compose.yml.clear /opt/harbor/docker-compose.yml

mv /opt/harbor/common/config/registry/config.yml /opt/harbor/common/config/registry/config.yml.common
mv /opt/harbor/common/config/registry/config.yml.clear /opt/harbor/common/config/registry/config.yml # start harbor docker-compose -f /opt/harbor/docker-compose.yml up -d # waiting healthy while [[ ! $(docker ps | grep -w healthy) ]] do echo "waiting healthy, sleep 3s..." sleep 3 done # clear docker run --network="
host" -it -v /data/registry:/registry -e REGISTRY_URL=http://127.0.0.1:5000 mortensrasmussen/docker-registry-manifest-cleanup:1.1.2beta docker run -it --name gc --rm --volumes-from registry vmware/registry-photon:v2.6.2-v1.4.0 garbage-collect /etc/registry/config.yml # stop harbor docker-compose -f /opt/harbor/docker-compose.yml down # restore harbor
mv /opt/harbor/docker-compose.yml /opt/harbor/docker-compose.yml.clear mv /opt/harbor/docker-compose.yml.common /opt/harbor/docker-compose.yml mv /opt/harbor/common/config/registry/config.yml /opt/harbor/common/config/registry/config.yml.clear mv /opt/harbor/common/config/registry/config.yml.common /opt/harbor/common/config/registry/config.yml # start harbor docker-compose -f /opt/harbor/docker-compose.yml up -d # waiting healthy while [[ ! $(docker ps | grep -w healthy) ]] do echo "waiting healthy, sleep 3s..." sleep 3 done # check disk df -h | grep data

1. 我的Harbor是安裝在/opt/harbor目錄下,所以建立指令碼的時候注意按照自己的部署環境進行調整

2. 可以考慮放在cron定時任務中:0 0 * * * /opt/harbor/clean.sh,“/opt/harbor/clean.sh”即為剛剛建立的指令碼,每天凌晨0點開始執行

筆者只是初學者,開此部落格的初衷是為了給自己的學習過程留一個痕跡。所以您可能發現筆者措辭不嚴謹、邏輯不合理,甚至程式碼有錯誤、結論很偏頗等等。筆者感激各位的討論和指正,並在此不勝感激!拜謝!歡迎加QQ群討論:852410026