使用Docker Harbor搭建私有鏡像服務(wù)器和Mirror服務(wù)器

Mirror Registry簡介

# Mirror是Docker Registry的一種特殊類型,它起到了類似代理服務(wù)器的緩存角色碘橘,在用戶和Docker Hub之間做Image的緩存宣虾。
# 其基本工作原理是悦荒,當(dāng)用戶pull一個鏡像時,若鏡像在mirror服務(wù)器存在,則直接從mirror服務(wù)器拉取响逢,否則若不存在該鏡像,則由mirror server自動代理往dockerhub(可配置)中拉取鏡像唤崭,并緩存到mirror服務(wù)器中拷恨,當(dāng)用戶再次拉取這個鏡像時,直接從mirror server中拉取谢肾,不需要再次從dockerhub中拉取腕侄。

使用Docker Harbor搭建私有服務(wù)器和Mirror服務(wù)器(使用pre-built package)

1 安裝docker和docker-compose
https://docs.docker.com/engine/installation/
https://docs.docker.com/compose/install/
2下載harbor
地址https://github.com/vmware/harbor/releases
3 解壓
$ tar -xzvf harbor-0.3.0.tgz
$ cd harbor
4 修改harbor.cfg文件
$ vim harbor.cfg
修改hostname=172.20.xxx.xx(自己的主機)
(此處暫且使用默認賬戶admin/Harbor12345,所以不修改郵箱相關(guān)信息)
5 執(zhí)行./prepare命令
6 修改配置(mirror服務(wù)器和私有服務(wù)器分開部署芦疏,因為mirror服務(wù)器只能pull冕杠,不能push)
6-1 Harbor作為mirror registry —— 修改config/registry/config.yml文件
$ vim config/registry/config.yml
在config.yml文件的最后追加以下配置:
proxy:
  remoteurl: https://registry-1.docker.io
   這樣保證docker pull并不存在于docker harbor中的image時,會從Docker Hub上去pull酸茴,并緩存于mirror服務(wù)器分预。
   此時無法從harbor的ui刪除鏡像倉庫。
add-proxy.png
6-2 Harbor作為私服 —— 修改/usr/lib/systemd/system/docker.service文件
$ vim /usr/lib/systemd/system/docker.service
在ExecStart=/usr/bin/dockerd --mtu=1472 --bip=10.1.102.1/24后面添加 --insecure-registry 172.20.xxx.xx:80
edit-docker-service.png
7 重啟docker服務(wù)
$ systemctl daemon-reload
$ service docker restart
8 build并啟動
$ docker-compose up -d
9 接下來需要需要配置客戶端(pull/push的機器薪捍,可以為服務(wù)器本機)
$ vim /usr/lib/systemd/system/docker.service
9-1 訪問mirror服務(wù)器的客戶端配置
    在ExecStart=/usr/bin/dockerd --mtu=1472 --bip=10.1.102.1/24后面添加--registry-mirror=http://172.20.141.69:80 
9-2 訪問私有服務(wù)器的客戶端配置
    在ExecStart=/usr/bin/dockerd --mtu=1472 --bip=10.1.102.1/24后面添加 --insecure-registry 172.20.xxx.xx:80
    可以添加多個服務(wù)器笼痹,如添加--insecure-registry 172.20.xxx.xx:80 --insecure-registry 172.20.xxx.aa:80
    ### 上述兩條中的172.20.xxx.xx和172.20.xxx.aa是服務(wù)器上的harbor.cfg的hostname
edit-docker-service-client.png
10 push/pull 鏡像
push時必須登錄,pull可以不登錄酪穿。
操作日志可以登錄頁面訪問凳干。(ui地址為http://172.20.xxx.xx/)
push操作如下:
$ docker tag hello-world 172.20.xxx.xx:80/library/hello-world
$ docker login 172.20.xxx.xx:80
$ docker push 172.20.xxxx.xx:80/library/hello-world

!!!注意:library是harbor中的項目名稱,里面包含的是鏡像倉庫被济,而hello-world就是鏡像倉庫
pull操作如下

$ docker pull 172.20.xxx.xx:80/library/hello-world
參考文章
1 安裝
https://github.com/vmware/harbor/blob/master/docs/installation_guide.md
2 Harbor作為mirror registry或私有服務(wù)器
http://www.cnblogs.com/puroc/p/5431375.html
http://blog.csdn.net/project_harbor/article/details/51261934
如果harbor出現(xiàn)問題纺座,可以執(zhí)行以下命令重啟harbor
$ docker-compose stop       //停止運行容器
$ docker-compose rm         //刪除容器
$ systemctl daemon-reload
$ service docker restart    //重啟docker
$ docker-compose up -d      //啟動harbor
注意事項
1 Harbor作為Mirror服務(wù)器時只能pull不能push了
https://github.com/vmware/harbor/issues/120
回答中還包括問題討論的鏈接,總之最后沒解決溉潭,DaoCloud采取的辦法是把用戶私服和mirror分開
2 Harbor作為Mirror服務(wù)器時净响,不能從ui上刪除鏡像倉庫。
以下是刪除library項目中的hello-world鏡像倉庫時報錯喳瓣。僅僅作為私服時可以順利刪除馋贤。
delete-failed.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市畏陕,隨后出現(xiàn)的幾起案子配乓,更是在濱河造成了極大的恐慌,老刑警劉巖惠毁,帶你破解...
    沈念sama閱讀 221,548評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件犹芹,死亡現(xiàn)場離奇詭異,居然都是意外死亡鞠绰,警方通過查閱死者的電腦和手機腰埂,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,497評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來蜈膨,“玉大人屿笼,你說我怎么就攤上這事牺荠。” “怎么了驴一?”我有些...
    開封第一講書人閱讀 167,990評論 0 360
  • 文/不壞的土叔 我叫張陵休雌,是天一觀的道長。 經(jīng)常有香客問我肝断,道長杈曲,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,618評論 1 296
  • 正文 為了忘掉前任胸懈,我火速辦了婚禮担扑,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘箫荡。我一直安慰自己魁亦,他們只是感情好渔隶,可當(dāng)我...
    茶點故事閱讀 68,618評論 6 397
  • 文/花漫 我一把揭開白布羔挡。 她就那樣靜靜地躺著,像睡著了一般间唉。 火紅的嫁衣襯著肌膚如雪绞灼。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,246評論 1 308
  • 那天呈野,我揣著相機與錄音低矮,去河邊找鬼。 笑死被冒,一個胖子當(dāng)著我的面吹牛军掂,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播昨悼,決...
    沈念sama閱讀 40,819評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼蝗锥,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了率触?” 一聲冷哼從身側(cè)響起终议,我...
    開封第一講書人閱讀 39,725評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎葱蝗,沒想到半個月后穴张,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,268評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡两曼,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,356評論 3 340
  • 正文 我和宋清朗相戀三年皂甘,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片悼凑。...
    茶點故事閱讀 40,488評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡叮贩,死狀恐怖击狮,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情益老,我是刑警寧澤彪蓬,帶...
    沈念sama閱讀 36,181評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站捺萌,受9級特大地震影響档冬,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜桃纯,卻給世界環(huán)境...
    茶點故事閱讀 41,862評論 3 333
  • 文/蒙蒙 一酷誓、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧态坦,春花似錦盐数、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,331評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至谜诫,卻和暖如春漾峡,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背喻旷。 一陣腳步聲響...
    開封第一講書人閱讀 33,445評論 1 272
  • 我被黑心中介騙來泰國打工生逸, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人且预。 一個月前我還...
    沈念sama閱讀 48,897評論 3 376
  • 正文 我出身青樓槽袄,卻偏偏與公主長得像,于是被迫代替她去往敵國和親锋谐。 傳聞我的和親對象是個殘疾皇子遍尺,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,500評論 2 359

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