1. 程式人生 > >Docker實戰系列——第二話--docker倉庫管理(一)--工具的選型

Docker實戰系列——第二話--docker倉庫管理(一)--工具的選型

眾所周知的docker倉庫

首先,我們來定義下大型docker登錄檔(倉庫)管理機構,因此我很清楚我正在比較眾所周知的倉庫管理機構。 目前,最流行的登錄檔(docker映象倉庫)是Docker Hub。 Docker Hub是已知登錄檔Universe的中心。它是每個Docker安裝配置為引用的預設託管登錄檔。
非常流行的有:

一些你可能會錯過的好工具

現在,讓我們來看看有意思的部分。以下是不太知名的註冊管理機構的概述。不知名,但並不意味著不優秀。讓我們來比較下他們各自的特點

Amazon EC2 Container Registry (ECR)

Amazon EC2 Container Registry (ECR)

,是一個登錄檔(映象倉庫管理工具)。是託管的Docker容器登錄檔。它與ECS整合。在2015年12月推出的時候,這是一個比大多數知名註冊管理機構更新的登錄檔選項,解釋了為什麼有些使用者可能不熟悉它。

ECS不是與ECR相容的唯一容器登錄檔。 ECS也支援外部登錄檔。然而,ECR的主要優點是它是一個完全託管和管理的登錄檔,它簡化了部署和管理。 ECR也與ECS基礎設施的其他部分一樣可擴充套件 - 這意味著它非常可擴充套件。

最佳使用場景:如果您是AWS服務的重度使用者,或計劃成為,並且開始尋找一個主辦私人映象的地方,那麼ECR使用是非常有道理的。如果您有大量的登錄檔部署或期望您的登錄檔隨著時間的推移顯著擴大,這也是一個不錯的選擇。在這種情況下,您將受益於ECR幾乎無限的可擴充套件性。

FlawCheck Private Registry

FlawCheck Private Registry ,(最近出現的,以及FlawCheck的其他業務,他們都由安全廠商Tenable提供服務)是一個以安全為重點的登錄檔選項。它為容器映象提供整合的漏洞掃描和惡意軟體檢測。雖然沒有保護您的容器映象沒有惡意程式碼,或防止惡意進行插入您的登錄檔的魔法子彈,瑕疵檢查的掃描功能可以幫助減輕風險。

最佳使用場景:對於有安全意識的公司來說,這是一個非常好的選擇。我預計這個註冊管理機構在受到嚴格管制的行業很多。

GitLab Container Registry

GitLab Container Registry,

,它可以作為託管或本地登錄檔執行,是GitLab託管容器映像的解決方案。它內建在GitLab中,與GitLab的其他工具完全相容,這意味著它可以直接整合到GitLab傳輸管道中。如果您的團隊正在尋求採用儘可能少的移動部件的無縫DevOps工作流程,那麼這是一個優勢。

最佳應用場景:一些開發人員可以方便地將Docker的影象儲存在與其原始碼相同的平臺上。如果您使用GitLab作為原始碼,那麼您可能會發現GitLab容器登錄檔方便。否則,GitLab容器登錄檔不提供大多數其他登錄檔所提供的任何殺手級功能。

Portus by SUSE

Portus ,在技​​術上不是登錄檔,但它提供了一個替代Docker Registry內部部署的本機UI的前端。 Portus旨在通過提供額外的訪問控制選項為Docker Registry增加可使用性。

這些包括配置“團隊”或註冊管理機構使用者的能力,為每個團隊建立不同的訪問級別。 (在許多方面,此功能與類Unix系統上的使用者組相似)。Portus還支援登錄檔名稱空間,這樣可以配置各個使用者以及使用者團隊可以對不同的儲存庫進行修改的型別在粒度的基礎上。另外值得注意的是,Portus提供了一個使用者友好的Web介面,用於配置登錄檔設定和訪問控制。 (也可以使用CLI配置工具portusctl。)

最佳使用場景:如果您喜歡Docker Registry,但需要額外的安全控制,或者有其他原因使用細粒度的訪問控制,Portus是一個強大的解決方案。

Sonatype Nexus

Sonatype Nexus,它支援託管和本地部署,是一個通用儲存庫。它支援比Docker映象託管更多,但它也可以用作Docker登錄檔。它比Docker成熟的多了,而且即使以前從未與容器註冊機構合作,也可能熟悉管理員。核心Nexus平臺是開放原始碼,但也提供商業選項。

最佳使用場景:許多公司已經將Nexus部署為Maven的儲存庫多年。通過簡單地升級到現代版本的平臺,組織可以增加對Docker映像託管的支援,從而建立自己的Docker登錄檔,而無需對新產品進行培訓或操作人員。此外,他們可以在Docker映象旁邊託管其他型別的東西。

VMware Harbor Registry

您可能不會認為VMware是Docker生態系統的主要參與者,但該公司肯定會在水中佔據一席之地。
HarborRegistry,是VMware解決Docker映象的答案。該登錄檔基於Docker Distribution的基礎,但它增加了安全性和身份管理功能。它還支援單個主機上的多個登錄檔。

最佳使用場景:由於Harbor專注於安全性和使用者管理,該選項提供了企業可能尋求的一些有價值的登錄檔功能,這些功能不可用於所有其他登錄檔。這是企業的不錯選擇。值得注意的是,由於Harbour作為Docker容器執行,可以輕鬆地安裝在具有Docker環境的任何伺服器上,開發人員甚至提供了一個離線安裝程式,這在安全考慮或其他因素意味著與公共網際網路的連線不可用時,是一個很好的解決辦法。

總結:

不同的登錄檔產品之間的主要變數包括他們支援什麼型別的部署環境(託管,內部部署或兩者); 他們的訪問控制選項如何微調 ; 以及他們為docker註冊管理機構提供了多少額外安全性, 為您的需求選擇正確的登錄檔,當然會取決於這些功能如何與您的優先順序保持一致。但是有了這麼多的選擇,找到一個登錄檔並不難,為一個組織的需求提供了完美的平衡。