成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Flux7 Docker 系列教程(四):Registry & Workflows

dackel / 776人閱讀

摘要:本系列教程翻譯自,系列共有九篇,本文譯自第四篇。由三個(gè)部分組成。由發(fā)布鏡像的供應(yīng)商提供的。通過多重安全檢查進(jìn)行認(rèn)證的私有。用于進(jìn)行和的操作,同時(shí)用于時(shí)的登錄認(rèn)證。收到刪除信號(hào)和。通知已經(jīng)刪除,刪除數(shù)據(jù)庫中的所有相關(guān)的記錄。

  

本系列教程翻譯自 Flux7 Docker Tutorial Series,系列共有九篇,本文譯自第四篇 Part 4: Registry & Workflows。
該系列所有文章將參考其他學(xué)習(xí)資料翻譯,也會(huì)加入自己的學(xué)習(xí)作為部分注解。如有錯(cuò)誤,歡迎指正。

上篇文章介紹了使用 Dockerfile 進(jìn)行自動(dòng)化部署和 Dockerfile 的常用命令,本篇文章來探討 Docker Registry。類似 GitHub,Docker Registry 是用來存儲(chǔ) Docker 鏡像的地方。了解 Docker Registry 之前先來了解幾個(gè)相關(guān)的知識(shí)吧。

鏡像和倉庫和 GitHub 一樣,可以被收藏和被 “star”。

和 GitHub 一樣,可以在倉庫上面留評(píng)論以便和維護(hù)人員進(jìn)行交流。

和 Github 類似私人倉庫不能被搜索到,只有擁有合作者、擁有者權(quán)限的用戶才能訪問。

推送成功之后可以配置 webhook。

Docker Registry 由三個(gè)部分組成:Index、Registry、Registry Client。

  

可以把 Index 認(rèn)為是負(fù)責(zé)登錄、負(fù)責(zé)認(rèn)證、負(fù)責(zé)存儲(chǔ)鏡像信息和負(fù)責(zé)對(duì)外顯示的外部實(shí)現(xiàn),而 Registry 則是負(fù)責(zé)存儲(chǔ)鏡像的內(nèi)部實(shí)現(xiàn),而 Registry Client 則是 Docker 客戶端。

Docker Hub 架構(gòu) Docker Index

Docker Index 使用以下工具來維護(hù)用戶信息、校驗(yàn)鏡像、以及維護(hù)公共 namespace:

網(wǎng)頁界面

元數(shù)據(jù)存儲(chǔ)

認(rèn)證服務(wù)

令牌化

同時(shí) Docker Index 也用來分解 URL,方便用戶認(rèn)證和用戶使用。

Registry

Registry 用來存儲(chǔ)鏡像和統(tǒng)計(jì)數(shù)據(jù)。然而它不會(huì)提供數(shù)據(jù)庫服務(wù),即它不會(huì)提供用戶認(rèn)證服務(wù),由 S3、云文件和本地文件系統(tǒng)提供數(shù)據(jù)庫支持。另外,由 Index 通過 Token 進(jìn)行用戶認(rèn)證。有多種不同的 Registry,下面是其中幾個(gè)的例子:

Sponsor Registry 第三方 Registry,為客戶和 Docker 社區(qū)提供服務(wù)。

Mirror Registry 第三方 Registry,只為客戶提供服務(wù)。

Vendor Registry 由發(fā)布 Docker 鏡像的供應(yīng)商提供的 Registry。

Private Registry 通過多重安全檢查進(jìn)行認(rèn)證的私有 Registry。

Registry Client

用于進(jìn)行 pull 和 push 的操作,同時(shí)用于 docker push 時(shí)的登錄認(rèn)證。

為了更好地理解 Registry Client 的工作流程,下面將詳細(xì)描述一下五個(gè)案例中的 Docker Registry 工作流程。

情景 A:從官方倉庫 Pull 鏡像

用戶對(duì) Index 發(fā)出下載請(qǐng)求

Index 返回以下三個(gè)部分的信息:

鏡像所在的 Registry。

鏡像所有的層的校驗(yàn)

認(rèn)證之后的 Token

用戶使用 Token 和 Registry 進(jìn)行通信,Registry 負(fù)責(zé)存儲(chǔ)鏡像和疊加在鏡像上面的改動(dòng)層。

Registry 確認(rèn)是否是 Index 所發(fā)出的的 Token。

Index 返回確認(rèn)值,由此判斷用戶是否可以下載鏡像。
>只有在請(qǐng)求的 header 里有 X-Docker-Token 時(shí)才會(huì)返回 Token。私有倉庫需要認(rèn)證,而公有倉庫不需要認(rèn)證。

情景 B:Push 鏡像到 Registry

用戶向 Index 發(fā)送憑證,并要求分配 repository 名稱。

認(rèn)證 namespace 的可用性后,分配 repository 名稱,同時(shí) Index 返回一個(gè)臨時(shí) Token。

向 Registry 發(fā)送 Token 和鏡像。

Registry 向 Index 確認(rèn) Token,確認(rèn)完畢之后讀取推送流。

Index 更新相關(guān)的鏡像信息。

情景 C:從 Index 和 Registry 刪除一個(gè)鏡像

Index 收到 delete 某個(gè) repository 的請(qǐng)求。

進(jìn)行 repository 認(rèn)證和用戶認(rèn)證,成功后 Index 給客戶端返回一個(gè)臨時(shí) Token。

Registry 收到刪除信號(hào)和 Token。

Registry 向 Index 驗(yàn)證 Token,然后刪除對(duì)應(yīng)的鏡像文件。

Registry 通知 Index 已經(jīng)刪除,Index 刪除數(shù)據(jù)庫中的所有相關(guān)的 repository 記錄。

情景 D:在沒有 Index 的情況下使用 Registry

沒有 Index 的 Registry 是完全受 Docker Clinet 控制的。這種模式最適合在私有網(wǎng)絡(luò)中存儲(chǔ)鏡像文件。Registry 運(yùn)行在一個(gè)和 Index 沒有通信的環(huán)境中,所有的認(rèn)證問題和安全問題都需要用戶自己解決。

情景 E:在有 Index 的獨(dú)立模式中使用 Registry

在這種情況下,用戶需要自己架設(shè)一個(gè) Index 去解決存儲(chǔ)和認(rèn)證問題。當(dāng)然,這種情況下可能會(huì)出現(xiàn)和官方 Index 時(shí)間不同步的問題。Docker 官方也提供了一個(gè)非常有意思的東西叫做 chaining registries,主要是為了解決負(fù)載均衡和為具體請(qǐng)求指定具體的 Registry。
當(dāng)然,我們可以參考 自己搭建本地 Docker Hub 服務(wù) 來搭建本地的 Docker Hub。。

接下來的文章中將會(huì)繼續(xù)介紹如何在以上每個(gè)場(chǎng)景中使用 Docker Registry API,并且也會(huì)深入了解 Docker 安全。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/26392.html

相關(guān)文章

  • Flux7 Docker 系列教程):Registry & Workflows

    摘要:本系列教程翻譯自,系列共有九篇,本文譯自第四篇。由三個(gè)部分組成。由發(fā)布鏡像的供應(yīng)商提供的。通過多重安全檢查進(jìn)行認(rèn)證的私有。用于進(jìn)行和的操作,同時(shí)用于時(shí)的登錄認(rèn)證。收到刪除信號(hào)和。通知已經(jīng)刪除,刪除數(shù)據(jù)庫中的所有相關(guān)的記錄。 本系列教程翻譯自 Flux7 Docker Tutorial Series,系列共有九篇,本文譯自第四篇 Part 4: Registry & Workflo...

    用戶83 評(píng)論0 收藏0
  • Docker 系列教程,Part 8: Docker Remote API

    摘要:注這篇文章是系列教程中的一篇,本篇文章由發(fā)布,原文地址在前面的文章中,作為正在進(jìn)行的教程系列的一部分,我們討論了。這個(gè)系列的其他教程 注:這篇文章是系列教程中的一篇,本篇文章由 Flux7 Labs 發(fā)布,原文地址 Docker Tutorial Series, Part 8: Docker Remote API 在前面的文章中,作為正在進(jìn)行的 Docker 教程系列的一部分...

    姘擱『 評(píng)論0 收藏0
  • Flux7 Docker 系列教程(七):Docker API

    摘要:本系列教程翻譯自,系列共有九篇,本文譯自第七篇。取出鏡像層插入鏡像層檢索鏡像檢索鏡像的根鏡像獲取指定庫的所有標(biāo)簽獲取指定庫的指定標(biāo)簽刪除標(biāo)簽狀態(tài)檢查是為設(shè)計(jì)的。同時(shí)也允許操作相關(guān)的用戶倉庫和倉庫。 本系列教程翻譯自 Flux7 Docker Tutorial Series,系列共有九篇,本文譯自第七篇 Part 7: Ultimate Guide for Docker APIs。...

    Scholer 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<