C.7 docker registry

介紹

什么是注冊(cè)服務(wù)?什么是倉(cāng)庫(kù)鹃祖?

注冊(cè)注冊(cè)服務(wù)(docker registry)是提供存放倉(cāng)庫(kù)(REPOSITORY)的服務(wù)器,docker 官方提供了一個(gè)默認(rèn)的公共服務(wù)(docker hub)恬口,個(gè)人或者企業(yè)可以將自己制作的鏡像上傳到docker hub,也可以上傳到自己搭建的私服楷兽。類(lèi)似于 maven 的官方服務(wù)和私服。

倉(cāng)庫(kù)(REPOSITORY)是存放鏡像的命名空間芯杀,倉(cāng)庫(kù)里面有多個(gè)不同標(biāo)簽(TAG)的鏡像。類(lèi)似于 maven 的 artifactId 和 version揭厚。

倉(cāng)庫(kù)(REPOSITORY)的名字由兩部分組成:比如 rancher/server,前半部分是多用戶(hù)環(huán)境下的用戶(hù)名筛圆,后半部分是軟件名裂明。如果不需要用戶(hù)環(huán)境,前半部分可以丟棄太援,如果是用私服的話(huà)闽晦,還需要在倉(cāng)庫(kù)名前面加上地址名(域名),例如:registry.mateng.pers:5000/mateng/kafka 或者 registry.mateng.pers:5000/kafka

鏡像的命名為:<REPOSITORY>:<TAG>提岔。倉(cāng)庫(kù)加標(biāo)簽即為一個(gè)唯一的鏡像。

命名規(guī)則:

  • 一般在私服中大多不會(huì)使用多用戶(hù)環(huán)境碱蒙,所以不考慮用戶(hù)名
  • 倉(cāng)庫(kù)名為軟件名
  • 標(biāo)簽為版本號(hào)

registry 分類(lèi)

  • 公開(kāi)服務(wù)
    • docker hub
    • 阿里云鏡像庫(kù)
    • 網(wǎng)易云鏡像庫(kù)
  • 私有registry

私有 registry 的搭建

介紹

docker私服是為每個(gè)docker主機(jī)提供鏡像服務(wù),每個(gè)docker主機(jī)即為我們的部署程序軟件的機(jī)器赛惩。

  • 每個(gè)docker主機(jī)可以上傳鏡像到倉(cāng)庫(kù)
  • 每個(gè)docker主機(jī)可以從倉(cāng)庫(kù)中下載鏡像安裝運(yùn)行到本地

準(zhǔn)備

準(zhǔn)備兩臺(tái)機(jī)器,分別都安裝好docker喷兼,并啟動(dòng)成功

  • 192.168.137.103 作為 docker 主機(jī)
  • 192.168.137.104 作為 docker 私服
  • 在 192.168.137.103 機(jī)器上配置 hosts
192.168.137.104 registry.mateng.pers

下載并安裝

在 docker 私服機(jī)器上安裝 docker registry

#下載registry鏡像
docker pull registry
#鏡像啟動(dòng)一個(gè)容器
docker run -d \
    -p 5000:5000 \
    --name registry \
    --restart=always \
    -v /opt/docker-software/registry:/var/lib/registry \
registry

此時(shí)私服已經(jīng)搭建完畢

docker 主機(jī)配置

1、在所有的 docker 主機(jī)上配置/etc/hosts褒搔,其中 x.x.x.x為docker倉(cāng)庫(kù)的地址喷面, 通過(guò)域名來(lái)映射 docker 私服的ip。如:

x.x.x.x registry.mateng.pers

2惧辈、在docker主機(jī)上配置倉(cāng)庫(kù)的地址

# centos7的配置方法
vim /lib/systemd/system/docker.service

# 修改配置文件的ExecStart參數(shù)
ExecStart=/usr/bin/dockerd \
        --insecure-registry=registry.mateng.pers:5000 
        
# 重啟Docker
systemctl daemon-reload
systemctl restart docker.service

測(cè)試上傳下載

在 docker 主機(jī)上測(cè)試鏡像的上傳下載

# 從docker hub 下載測(cè)試鏡像
docker pull hello-world

# 給本地的hello-world鏡像新打標(biāo)簽,形成新鏡像
# 域名為倉(cāng)庫(kù)地址
docker tag hello-world registry.mateng.pers:5000/hello-world

# 將新鏡像上傳到本地私服
docker push registry.mateng.pers:5000/hello-world

通過(guò) http 查看私服中的鏡像

curl registry.mateng.pers:5000/v2/_catalog

經(jīng)驗(yàn)分享

由于docker倉(cāng)庫(kù)的地址可能會(huì)變盒齿,所以建議一般在 docker 主機(jī)上配置hosts來(lái)映射docker-registry的ip

registry UI管理界面

由于我們通過(guò)瀏覽器輸入http://私服的ip:5000/v2/_catalog,訪(fǎng)問(wèn)可以查看到倉(cāng)庫(kù)中有哪些鏡像边翁,但是界面比較粗糙,查看不方便符匾。
為此我們要重新安裝一個(gè)倉(cāng)庫(kù)的UI管理界面來(lái)更好的使用倉(cāng)庫(kù)。例如hyper/docker-registry-web瘩例,konradkleine/docker-registry-frontend。以下只說(shuō)明hyper/docker-registry-web的安裝垛贤。

registry-web 安裝

docker run -d \
    -p 5002:8080 \
    --name registry-web \
    --link registry \
    -v /opt/docker-software/registry/web:/data \
    -e REGISTRY_URL=http://registry:5000/v2 \
    -e REGISTRY_TRUST_ANY_SSL=true \
    -e REGISTRY_NAME=registry.mateng.pers:5000 \
    hyper/docker-registry-web

命令解釋?zhuān)?/p>

  • -p 5002:8080 端口映射,使用宿主機(jī)的5002端口映射容器的8080端口
  • --name 容器名稱(chēng)
    --link 連接到私服聘惦,registry為docker私服容器的名字,
    必須加
  • -e REGISTRY_TRUST_ANY_SSL=true善绎,環(huán)境變量,相信所有的ssl涂邀,取消ssl驗(yàn)證
  • -e REGISTRY_NAME, docker倉(cāng)庫(kù)中每個(gè)鏡像的前綴,會(huì)在docker-registry-web的頁(yè)面上顯示(這個(gè)域名是私服的域名比勉,端口是私服的端口)
  • -e REGISTRY_URL 鏈接私服的url驹止。和 REGISTRY_NAME 類(lèi)似浩聋,這兩個(gè)最好寫(xiě)一致

通過(guò)編排方式啟動(dòng)

vim stack.yml

version: '3'
services:
  registry:
    image: registry:latest
    ports:
      - 5000:5000
    volumes:
      - /opt/docker-software/registry:/var/lib/registry
    networks:
      - net
    deploy:
      replicas: 1
      restart_policy:
        condition: on-failure
      placement:
        constraints:
        - node.role == manager
              
  web:
    image: hyper/docker-registry-web:latest
    ports:
      - 5002:8080
    volumes:
      - /opt/docker-software/registry/web:/data
    depends_on:
      - registry
    networks:
      - net
    environment:
      REGISTRY_HOST: registry
      REGISTRY_URL: http://registry:5000/v2
      REGISTRY_NAME: registry.mateng.pers:5000
    deploy:
      replicas: 1
      restart_policy:
        condition: on-failure
      placement:
        constraints:
        - node.role == manager
        
networks:
  net: 

參考文件

https://docs.docker.com/registry/deploying/

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末衣洁,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子抖仅,更是在濱河造成了極大的恐慌砖第,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,198評(píng)論 6 514
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件环凿,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡智听,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,334評(píng)論 3 398
  • 文/潘曉璐 我一進(jìn)店門(mén)到推,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人莉测,你說(shuō)我怎么就攤上這事〉仿保” “怎么了忍抽?”我有些...
    開(kāi)封第一講書(shū)人閱讀 167,643評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵腌零,是天一觀(guān)的道長(zhǎng)。 經(jīng)常有香客問(wèn)我益涧,道長(zhǎng),這世上最難降的妖魔是什么闲询? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,495評(píng)論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮扭弧,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘鸽捻。我一直安慰自己呼巴,他們只是感情好御蒲,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,502評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著厚满,像睡著了一般。 火紅的嫁衣襯著肌膚如雪碘箍。 梳的紋絲不亂的頭發(fā)上遵馆,一...
    開(kāi)封第一講書(shū)人閱讀 52,156評(píng)論 1 308
  • 那天,我揣著相機(jī)與錄音秆撮,去河邊找鬼。 笑死逻恐,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的复隆。 我是一名探鬼主播,決...
    沈念sama閱讀 40,743評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼挽拂,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了亏栈?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,659評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤绒北,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后闷游,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,200評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡脐往,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,282評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了业簿。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,424評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡梅尤,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出巷燥,到底是詐尸還是另有隱情,我是刑警寧澤矾湃,帶...
    沈念sama閱讀 36,107評(píng)論 5 349
  • 正文 年R本政府宣布堕澄,位于F島的核電站邀跃,受9級(jí)特大地震影響霉咨,放射性物質(zhì)發(fā)生泄漏拍屑。R本人自食惡果不足惜途戒,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,789評(píng)論 3 333
  • 文/蒙蒙 一僵驰、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧蒜茴,春花似錦、人聲如沸粉私。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,264評(píng)論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)抄肖。三九已至窖杀,卻和暖如春漓摩,著一層夾襖步出監(jiān)牢的瞬間入客,已是汗流浹背管毙。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,390評(píng)論 1 271
  • 我被黑心中介騙來(lái)泰國(guó)打工痊项, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人鞍泉。 一個(gè)月前我還...
    沈念sama閱讀 48,798評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像咖驮,于是被迫代替她去往敵國(guó)和親边器。 傳聞我的和親對(duì)象是個(gè)殘疾皇子托修,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,435評(píng)論 2 359

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