Harbor 鏡像大小為零,揭秘原由!

Harbor倉庫啟用同步策略,發(fā)現(xiàn)同步失敗荐健,檢查日志發(fā)現(xiàn)報錯如下:

[ERROR] [/replication/transfer/image/transfer.go:268]: failed to pull the manifest of image kty/report:dev-v0.1.25: http error: code 404, message {"errors":[{"code":"MANIFEST_UNKNOWN","message":"manifest unknown","detail":{"Name":"kty/report","Revision":"sha256:290ad5353a76d4eb0c5969221618150af46534a1101f2a058eb99c7036dbfa7d"}}]}
[ERROR] [/replication/transfer/image/transfer.go:143]: http error: code 404, message {"errors":[{"code":"MANIFEST_UNKNOWN","message":"manifest unknown","detail":{"Name":"kty/report","Revision":"sha256:290ad5353a76d4eba1101f2ac5969221603418150af465058eb99c7036dbfa7d"}}]}

登錄Harbor備份源,檢查發(fā)現(xiàn)琳袄,鏡像大小為零江场;

思考

鏡像大小為零如何上傳?
如何處理大小為零的鏡像窖逗?直接刪除址否?
如何避免推送大小為零的鏡像到harbor倉庫?

如何產(chǎn)生

登錄harbor Web管理頁面刪除鏡像滑负,通過“docker push”命令推送鏡像(與刪除鏡像相同)到harbor項(xiàng)目中報錯“Layer already exists”在张,Web管理頁面生成一個大小為零的鏡像,且頁面操作刪除無效矮慕;

補(bǔ)充:

Harbor倉庫里的鏡像刪除分為兩步驟
軟連接刪除帮匾,通俗講就是Web管理頁面進(jìn)行的刪除,如果誤刪除重新推送鏡像即可恢復(fù)痴鳄;
物理文件刪除瘟斜,登錄服務(wù)器通過鏡像“vmware/registry:2.6.2-photon”進(jìn)行刪除,官方稱之為垃圾回收(GC)痪寻;
文檔:垃圾回收(GC)

故障復(fù)現(xiàn)

結(jié)果復(fù)現(xiàn)

解釋 1.0 大小為零如何出現(xiàn)

docker push 10.10.1.43/kry/vmware/photon:1.0
解釋:登錄Harbor Web管理頁面刪除鏡像螺句,物理刪除文件,通過“push”命令推送鏡像相同鏡像橡类,命令行報錯“Layer already exists”蛇尚,Web出現(xiàn)大小為0的1.0;

注意:
push鏡像之前刪除掉“./kry/vmware/photon/_manifests/tags/1.0/”
push鏡像之前刪除掉“./kry/vmware/photon/_manifests”(只有一個鏡像顾画,多個正常鏡像不要刪除)
分別進(jìn)行以上兩步操作取劫,都無法正常上傳鏡像匆笤;

解釋 1.1 大小為零如何出現(xiàn)

docker tag 10.10.1.43/kry/vmware/photon:1.0 10.10.1.43/kry/vmware/photon:1.1
docker push 10.10.1.43/kry/vmware/photon:1.1
解釋:ta鏡像,然后通過“push”命令推送tag 1.1版本谱邪,命令行報錯“Layer already exists”炮捧,Web出現(xiàn)大小為0的1.1;

解釋 2.0 大小正常如何出現(xiàn)

docker tag hello-world:latest 10 10.10.1.43/kry/vmware/photon:2.0
docker push 10.10.1.43/kry/vmware/photon:2.0
解釋:將“hello-world” tag 2.0版本并推送覆蓋惦银;

結(jié)果:

Web刪除相同鏡像咆课,只要刪除物理文件(GC或者手動刪除目錄)在上傳相同鏡像會報錯,并且會產(chǎn)生一個大小不正常的鏡像在harbor倉庫中扯俱;
該鏡像就算重新tag推送也是一樣的书蚪,因?yàn)椤癉IGEST”值一致;


DIGEST.png

影響

鏡像無法被正常刪除迅栅;刪除執(zhí)行成功善炫,刷新頁面依然存在;
鏡像復(fù)制時會報錯库继,但是大小正常的鏡像能被正常復(fù)制箩艺;
無法正常 pull 鏡像;

問題

1.恢復(fù)鏡像正常(后續(xù)使用)宪萄;
解決:推送源鏡像覆蓋

2.刪除鏡像艺谆;
解決:推送源鏡像或者tag其他鏡像推送覆蓋,Web管理頁面操作刪除拜英,可選刪除物理文件静汤;

解決辦法

1.重啟harbor服務(wù)

cd /usr/local/harbor
docker-compose restart

2.推送鏡像

docker push 10.10.1.43/kry/vmware/photon:1.0
docker push 10.10.1.43/kry/vmware/photon:1.1

注意:
推送源鏡像覆蓋,鏡像恢復(fù)正常居凶;
解決問題1虫给;

3.tag其他鏡像推送

docker pull hello-world:latest
docker tag hello-world:latest 10.10.1.43/kry/vmware/photon:1.0

注意:問題2另一種解決方式;

4.登錄Web頁面

image.png

注意:
如果需要鏡像恢復(fù)正常繼續(xù)使用到此結(jié)束侠碧;

5.Web頁面刪除鏡像

登錄Web管理頁面--點(diǎn)擊項(xiàng)目--確認(rèn)勾選鏡像--點(diǎn)擊刪除
注意:tag其他鏡像上傳只為刪除Web頁面顯示大小不正常鏡像抹估,自選是否進(jìn)行物理文件刪除,需要刪除繼續(xù)執(zhí)行以下命令弄兜;

6.預(yù)覽刪除物理文件(自選)

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

注意:不確定以后還需要使用該鏡像時建議保留药蜻,不執(zhí)行物理文件刪除;

7.刪除物理文件(自選)

docker run -it --name gc --rm \
--volumes-from registry vmware/registry:2.6.2-photon \
garbage-collect /etc/registry/config.yml
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末替饿,一起剝皮案震驚了整個濱河市语泽,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌视卢,老刑警劉巖踱卵,帶你破解...
    沈念sama閱讀 210,978評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異据过,居然都是意外死亡惋砂,警方通過查閱死者的電腦和手機(jī)蔬充,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,954評論 2 384
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來班利,“玉大人,你說我怎么就攤上這事榨呆÷薇辏” “怎么了?”我有些...
    開封第一講書人閱讀 156,623評論 0 345
  • 文/不壞的土叔 我叫張陵积蜻,是天一觀的道長闯割。 經(jīng)常有香客問我,道長竿拆,這世上最難降的妖魔是什么宙拉? 我笑而不...
    開封第一講書人閱讀 56,324評論 1 282
  • 正文 為了忘掉前任,我火速辦了婚禮丙笋,結(jié)果婚禮上谢澈,老公的妹妹穿的比我還像新娘。我一直安慰自己御板,他們只是感情好锥忿,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,390評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著怠肋,像睡著了一般敬鬓。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上笙各,一...
    開封第一講書人閱讀 49,741評論 1 289
  • 那天钉答,我揣著相機(jī)與錄音,去河邊找鬼杈抢。 笑死数尿,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的惶楼。 我是一名探鬼主播砌创,決...
    沈念sama閱讀 38,892評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼鲫懒!你這毒婦竟也來了嫩实?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,655評論 0 266
  • 序言:老撾萬榮一對情侶失蹤窥岩,失蹤者是張志新(化名)和其女友劉穎甲献,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體颂翼,經(jīng)...
    沈念sama閱讀 44,104評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡晃洒,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評論 2 325
  • 正文 我和宋清朗相戀三年慨灭,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片球及。...
    茶點(diǎn)故事閱讀 38,569評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡氧骤,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出吃引,到底是詐尸還是另有隱情筹陵,我是刑警寧澤,帶...
    沈念sama閱讀 34,254評論 4 328
  • 正文 年R本政府宣布镊尺,位于F島的核電站朦佩,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏庐氮。R本人自食惡果不足惜语稠,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,834評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望弄砍。 院中可真熱鬧仙畦,春花似錦、人聲如沸音婶。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,725評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽桃熄。三九已至先口,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間瞳收,已是汗流浹背碉京。 一陣腳步聲響...
    開封第一講書人閱讀 31,950評論 1 264
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留螟深,地道東北人谐宙。 一個月前我還...
    沈念sama閱讀 46,260評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像界弧,于是被迫代替她去往敵國和親凡蜻。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,446評論 2 348

推薦閱讀更多精彩內(nèi)容