自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Docker倉(cāng)庫(kù)管理實(shí)戰(zhàn):公共與私有倉(cāng)庫(kù)

云計(jì)算 云原生
Docker 鏡像倉(cāng)庫(kù)是存儲(chǔ)和管理 Docker 鏡像的地方。它可以是公共或私有的,并且提供了一個(gè)集中式的地方來(lái)分享、存儲(chǔ)和管理 Docker 鏡像。這有點(diǎn)像github和gitlab,只不過(guò)github和gitlab是一個(gè)代碼托管平臺(tái),在平臺(tái)上托管的是代碼,這里托管是各種的鏡像。

核心內(nèi)容

  • Docker公共倉(cāng)庫(kù)與私有倉(cāng)庫(kù)的概述。
  • 公共倉(cāng)庫(kù)(Docker hub)登入與登出命令使用詳解。
  • 如何搭建一個(gè)簡(jiǎn)單的私有倉(cāng)庫(kù)。
  • 如何在搭建的私有倉(cāng)庫(kù)內(nèi),實(shí)現(xiàn)私有鏡像的查詢、上傳、下載。

公共倉(cāng)庫(kù)與私有倉(cāng)庫(kù)

Docker 鏡像倉(cāng)庫(kù)是存儲(chǔ)和管理 Docker 鏡像的地方。它可以是公共或私有的,并且提供了一個(gè)集中式的地方來(lái)分享、存儲(chǔ)和管理 Docker 鏡像。這有點(diǎn)像github和gitlab,只不過(guò)github和gitlab是一個(gè)代碼托管平臺(tái),在平臺(tái)上托管的是代碼,這里托管是各種的鏡像。

下面是公共鏡像倉(cāng)庫(kù)和私有鏡像倉(cāng)庫(kù)兩種倉(cāng)庫(kù)類型的典型代表:

  • Docker Hub:Docker Hub 是 Docker 公司提供的官方鏡像倉(cāng)庫(kù),包含了數(shù)量龐大的公共鏡像,用戶可以通過(guò) Docker Hub 在云端存儲(chǔ)和分享自己的鏡像。你可以在 Docker Hub 上找到各種開(kāi)源軟件的官方和社區(qū)維護(hù)的鏡像,也可以自己創(chuàng)建賬號(hào)并上傳自己的鏡像。
  • Harbor:Harbor 是一個(gè)開(kāi)源的企業(yè)級(jí) Docker 鏡像倉(cāng)庫(kù)服務(wù),提供了安全、可信賴的鏡像存儲(chǔ)和管理功能。它支持多種存儲(chǔ)后端,并提供了靈活的訪問(wèn)控制和權(quán)限管理功能,適用于企業(yè)內(nèi)部使用。

這些鏡像倉(cāng)庫(kù)都提供了豐富的功能和服務(wù),可以滿足不同場(chǎng)景下的需求。如果用戶想要根據(jù)自己的需求選擇合適的鏡像倉(cāng)庫(kù)服務(wù)來(lái)存儲(chǔ)和管理 Docker 鏡像,那么公共鏡像倉(cāng)庫(kù)與私有鏡像倉(cāng)庫(kù)的區(qū)別是需要提前了解清楚的:

訪問(wèn)權(quán)限

  • 公共鏡像倉(cāng)庫(kù):公共鏡像倉(cāng)庫(kù)是開(kāi)放的,任何人都可以訪問(wèn)其中的鏡像,無(wú)需進(jìn)行身份驗(yàn)證或付費(fèi)。用戶可以通過(guò)搜索功能找到并下載公共倉(cāng)庫(kù)中的鏡像。
  • 私有鏡像倉(cāng)庫(kù):私有鏡像倉(cāng)庫(kù)是受限的,只有授權(quán)的用戶才能訪問(wèn)其中的鏡像。通常需要進(jìn)行身份驗(yàn)證,并且可能需要付費(fèi)訂閱才能訪問(wèn)。私有倉(cāng)庫(kù)適用于存儲(chǔ)和分享組織內(nèi)部使用的敏感或?qū)S械溺R像。

安全性

  • 公共鏡像倉(cāng)庫(kù):公共鏡像倉(cāng)庫(kù)中的鏡像可能來(lái)自各種來(lái)源,包括社區(qū)貢獻(xiàn)者和官方維護(hù)者。盡管大多數(shù)鏡像都是安全的,但用戶應(yīng)該注意安全漏洞和惡意代碼的可能性。
  • 私有鏡像倉(cāng)庫(kù):私有鏡像倉(cāng)庫(kù)受到組織內(nèi)部的管控和監(jiān)管,可以更好地控制鏡像的來(lái)源和內(nèi)容,提高了安全性。

定制化和擴(kuò)展性

  • 公共鏡像倉(cāng)庫(kù):公共鏡像倉(cāng)庫(kù)通常包含了大量常用的鏡像,用戶可以快速獲取和使用。然而,由于是公開(kāi)的,用戶可能無(wú)法定制和擴(kuò)展其中的鏡像。
  • 私有鏡像倉(cāng)庫(kù):私有鏡像倉(cāng)庫(kù)可以根據(jù)組織的需求定制和擴(kuò)展鏡像,滿足特定的業(yè)務(wù)需求。用戶可以根據(jù)自己的需求創(chuàng)建和管理自己的鏡像,并對(duì)其進(jìn)行定制和擴(kuò)展。

成本

  • 公共鏡像倉(cāng)庫(kù):公共鏡像倉(cāng)庫(kù)通常是免費(fèi)的,用戶可以免費(fèi)訪問(wèn)其中的鏡像并使用。
  • 私有鏡像倉(cāng)庫(kù):私有鏡像倉(cāng)庫(kù)可能需要付費(fèi)訂閱才能訪問(wèn)和使用。成本取決于提供商和訂閱計(jì)劃的具體定價(jià)。

登入鏡像倉(cāng)庫(kù)

docker login 命令用于登錄到 Docker Hub 或其他 Docker鏡像倉(cāng)庫(kù)服務(wù)。登錄成功后,可以通過(guò) Docker客戶端來(lái)推送(push)或拉?。╬ull)鏡像到該鏡像倉(cāng)庫(kù)。

基本語(yǔ)法

docker login [OPTIONS] [SERVER]

各部分的含義如下:

  • OPTIONS:可選參數(shù),用于指定一些額外的選項(xiàng)和配置。
  • SERVER:要登錄的 Docker鏡像倉(cāng)庫(kù)服務(wù)的地址。如果不提供該參數(shù),默認(rèn)將登錄到 Docker Hub。

其中OPTIONS部分常見(jiàn)的選項(xiàng)主要是兩個(gè):

  • -u, --username:用戶名
  • -p, --password:密碼

使用示例

登錄到 Docker Hub:

docker login

圖片圖片

這會(huì)進(jìn)入一個(gè)交互式對(duì)話中,提示你輸入用戶名和密碼。輸入正確的用戶名和密碼即可成功登入;

如果你想通過(guò)命令行提供用戶名和密碼,可以使用 -u 和 -p 選項(xiàng):

docker login -u USERNAME -p PASSWORD

如果要登錄到私有的鏡像倉(cāng)庫(kù)服務(wù),需要提供相應(yīng)的私有鏡像倉(cāng)庫(kù)服務(wù)地址,REGISTRY_URL為私有倉(cāng)庫(kù)服務(wù)的地址:

docker login REGISTRY_URL

登錄成功后,將會(huì)在終端中看到登錄成功的提示信息,并且 Docker 客戶端將會(huì)在后續(xù)的操作中使用你提供的憑據(jù)來(lái)與鏡像倉(cāng)庫(kù)服務(wù)端進(jìn)行通信。

請(qǐng)注意,登錄到 Docker Registry 時(shí),密碼會(huì)以明文形式傳輸,因此請(qǐng)確保在安全的環(huán)境中使用 docker login 命令,并避免在公共場(chǎng)所或非安全的網(wǎng)絡(luò)中使用該命令。

登出鏡像倉(cāng)庫(kù)

docker logout 命令用于注銷當(dāng)前登錄的 Docker 用戶,從 Docker Hub 或其他 Docker鏡像倉(cāng)庫(kù)服務(wù)中退出登錄狀態(tài)。

基本語(yǔ)法

docker logout [SERVER]

其中,SERVER 參數(shù)是可選的,用于指定要注銷登錄的 Docker Registry 的地址。如果不提供該參數(shù),默認(rèn)將注銷當(dāng)前登錄的 Docker Hub 賬號(hào)。

使用示例

注銷當(dāng)前登錄的 Docker Hub 賬號(hào):

docker logout

如果你當(dāng)前已經(jīng)登錄到私有的 Docker Registry,可以提供相應(yīng)的 Registry 地址來(lái)注銷登錄狀態(tài):

docker logout REGISTRY_URL

執(zhí)行命令后,你將會(huì)看到注銷成功的提示信息,并且 Docker客戶端將不再使用之前提供的憑據(jù)來(lái)與 Registry 進(jìn)行通信。

私有倉(cāng)庫(kù)管理

在開(kāi)源的企業(yè)級(jí)Docker私有倉(cāng)庫(kù)工具中,Harbo是一個(gè)典型代表,相對(duì)比較流行,而Docker 官方也提供了一種開(kāi)源鏡像倉(cāng)庫(kù)工具 Docker Registry,相較于Harbor,Docker Registry在功能的豐富性上要差一些。下面是兩者在功能性上的一些區(qū)別:

功能擴(kuò)展

  • Docker Registry:Docker Registry 是 Docker 公司提供的開(kāi)源鏡像倉(cāng)庫(kù)服務(wù),提供了基本的鏡像存儲(chǔ)和傳輸功能。它可以作為 Docker Engine 的一部分運(yùn)行,并提供了基于 HTTP API 的標(biāo)準(zhǔn)接口。
  • Harbor:Harbor 是一個(gè)由 VMware 發(fā)起的開(kāi)源企業(yè)級(jí) Docker Registry 服務(wù),構(gòu)建在 Docker Registry 2.0 之上,提供了更豐富的功能和更高級(jí)的特性。除了基本的鏡像存儲(chǔ)和傳輸功能外,Harbor 還提供了許多高級(jí)功能,如安全掃描、RBAC 權(quán)限控制、鏡像復(fù)制和同步、鏡像簽名等。

安全性和權(quán)限控制

  • Docker Registry:Docker Registry 提供了基本的身份驗(yàn)證功能,但在權(quán)限控制方面相對(duì)較弱。它缺乏對(duì)鏡像內(nèi)容的安全掃描和審計(jì)功能。
  • Harbor:Harbor 提供了更強(qiáng)大的安全性和權(quán)限控制功能。它支持基于角色的訪問(wèn)控制(RBAC)、LDAP/AD 集成、鏡像內(nèi)容的漏洞掃描和安全審計(jì),以及鏡像簽名和驗(yàn)證等功能,能夠幫助用戶更好地管理和保護(hù)鏡像內(nèi)容的安全性。

鏡像復(fù)制和同步

  • Docker Registry:Docker Registry 本身不提供鏡像復(fù)制和同步功能,需要用戶自行實(shí)現(xiàn)。
  • Harbor:Harbor 支持鏡像復(fù)制和同步功能,可以在多個(gè) Harbor 實(shí)例之間同步鏡像,以實(shí)現(xiàn)高可用性和災(zāi)備備份。

多租戶支持:

  • Docker Registry:Docker Registry 不提供原生的多租戶支持,所有用戶和倉(cāng)庫(kù)都在同一個(gè)命名空間下。
  • Harbor:Harbor 提供了多租戶支持,可以在不同的項(xiàng)目或組織之間劃分不同的權(quán)限和訪問(wèn)控制策略,確保各個(gè)租戶之間的隔離和安全性。

總的來(lái)說(shuō),Harbor 在 Docker Registry 的基礎(chǔ)上提供了更多的高級(jí)功能和安全性控制,適用于更復(fù)雜的企業(yè)級(jí)應(yīng)用場(chǎng)景。

如果在實(shí)際工作應(yīng)用中,絕對(duì)更推薦Harbor。而這篇這里主要是想和大家分享一下私有鏡像倉(cāng)庫(kù)管理中一些基礎(chǔ)功能、通用操作。因此,這里我采用了Docker官方的開(kāi)源鏡像倉(cāng)庫(kù)服務(wù)Docker Registry。在后面會(huì)單獨(dú)來(lái)介紹把Harbor安裝、使用的詳細(xì)方法。

安裝 Docker Registry:

直接使用docker run命令,從Docker Hub中拉取Docker Registry鏡像并運(yùn)行容器:

docker run -d -p 5000:5000 --restart=always --name registry registry:latest

這將在服務(wù)器上啟動(dòng)一個(gè) Docker Registry 容器,監(jiān)聽(tīng)在默認(rèn)端口 5000 上,并且在容器退出時(shí)自動(dòng)重啟,確保 Docker Registry 服務(wù)始終可用。

給本地鏡像打上遠(yuǎn)程倉(cāng)庫(kù)的標(biāo)簽:

docker tag myimage your-registry/myimage:latest

將鏡像推送到遠(yuǎn)程倉(cāng)庫(kù):

docker push your-registry/myimage:latest

這樣,myimage 鏡像的 latest 版本就會(huì)被推送到了名為 your-registry 的私有倉(cāng)庫(kù)中。

如果想使用私有倉(cāng)庫(kù)中的鏡像:

docker pull your-registry/myimage:latest


責(zé)任編輯:武曉燕 來(lái)源: 凡夫編程
相關(guān)推薦

2020-08-07 17:03:24

私有鏡像倉(cāng)庫(kù)

2017-03-24 09:24:21

HarborDocker鏡像倉(cāng)庫(kù)

2022-07-11 07:37:55

HarborContainerd

2022-09-16 10:19:36

HarborContainerd

2013-11-01 13:21:23

Dropbox

2024-01-22 09:12:51

2019-08-18 23:46:52

私有云容器鏡像倉(cāng)庫(kù)

2023-03-30 07:35:55

2020-09-18 07:59:44

GitLabCI

2015-03-23 17:52:05

Android倉(cāng)庫(kù)管理系統(tǒng)SQLight

2012-06-14 15:30:58

Teradata數(shù)據(jù)倉(cāng)庫(kù)私有云

2022-12-08 19:27:38

2023-02-13 23:52:18

2025-02-26 12:21:08

2022-06-20 09:08:00

數(shù)據(jù)體系搭建

2011-09-01 09:51:50

2020-04-15 11:05:17

GitHub 倉(cāng)庫(kù)免費(fèi)

2011-08-09 10:20:55

GitLinux遠(yuǎn)程倉(cāng)庫(kù)

2020-11-23 15:49:28

物聯(lián)網(wǎng)

2020-06-11 08:56:34

數(shù)據(jù)倉(cāng)庫(kù)數(shù)據(jù)庫(kù)數(shù)據(jù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)