欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Docker中Harbor企業(yè)級鏡像倉庫的搭建與使用

 更新時間:2024年12月23日 11:06:21   作者:大雄野比  
本文介紹了Harbor企業(yè)級鏡像倉庫的搭建與使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

本章將和大家分享Docker倉庫之Harbor企業(yè)級鏡像倉庫的搭建與使用。廢話不多說,下面我們直接進入主題。

一、企業(yè)最愛:Harbor企業(yè)級鏡像倉庫

Harbor是VMware公司開源的一個企業(yè)級Docker Registry項目,項目地址:https://github.com/goharbor/harbor

Harbor是一個開源的企業(yè)級Docker Registry服務,它提供了一個安全、可信賴的倉庫來存儲和管理Docker鏡像。

雖然Harbor和Registry都是私有鏡像倉庫的選擇,但是Harbor的企業(yè)級特性更強,因此也是更多企業(yè)級用戶的選擇。

Harbor實現(xiàn)了基于角色的訪問控制機制,并通過項目來對鏡像進行組織和訪問權限的控制,也常常和K8S中的namespace結合使用。此外,Harbor還提供了圖形化的管理界面,我們可以通過瀏覽器來瀏覽,檢索當前Docker鏡像倉庫,管理項目和命名空間。

二、一些準備工作

1、安裝docker

如果還沒有安裝docker,那么請先安裝docker,已安裝則跳過。

[root@localhost ~]# docker -v
Docker version 26.1.4, build 5650f9b

之前的博文我們已經(jīng)講解過Docker的安裝,此處已經(jīng)安裝過就不再安裝了。

2、安裝docker-compose

此處我采用的是離線安裝方式。

首先下載 docker-compose 到本地,下載地址:https://github.com/docker/compose/

下載鏈接:https://github.com/docker/compose/releases/download/v2.30.1/docker-compose-linux-x86_64

如果直接點擊下載比較慢的話,建議復制鏈接地址到迅雷下載,這樣可能會快一些。下載完成后,把它上傳到 Linux 服務器,如下所示:

接著把可執(zhí)行文件移到 Linux 系統(tǒng)命令目錄(/usr/local/bin/)下,并重命名為 “docker-compose” :mv docker-compose-linux-x86_64 /usr/local/bin/docker-compose

授權:chmod +x /usr/local/bin/docker-compose

驗證是否安裝成功:docker-compose --version

如果能正常顯示出正確的版本號,說明安裝成功了。

如果需要卸載,直接刪除即可:sudo rm /usr/local/bin/docker-compose

三、Harbor安裝與配置

1、下載 Harbor 離線安裝包

通過 GitHub下載離線安裝包,下載地址:https://github.com/goharbor/harbor

下載鏈接:https://github.com/goharbor/harbor/releases/download/v2.11.1/harbor-offline-installer-v2.11.1.tgz

如果直接點擊下載比較慢的話,建議復制鏈接地址到迅雷下載,這樣可能會快一些。

2、把安裝包上傳到 Linux 服務器

下載完成后,把離線安裝包上傳到 Linux 服務器,如下所示:

3、將安裝包解壓出來

tar -zxvf harbor-offline-installer-v2.11.1.tgz

4、修改 harbor.yml 配置文件

進入解壓后的文件夾,復制 harbor.yml.tmpl 文件,并重命名為 harbor.yml ,如下所示:

# 拷貝并重命名
cp harbor.yml.tmpl harbor.yml

# 修改配置文件
vim harbor.yml

修改配置文件,需要設置hostname、端口、admin用戶的初始登錄密碼等,標紅色的表示修改的部分:

# The IP address or hostname to access admin UI and registry service.
# DO NOT use localhost or 127.0.0.1, because Harbor needs to be accessed by external clients.
# 修改主機名,如果沒有域名就使用本機IP地址
hostname: 192.168.4.250

# 配置啟動端口號,默認是80端口,此處我把它改成 5001
# http related config
http:
  # port for http, default is 80. If https enabled, this port will redirect to https port
  port: 5001

# 如果沒有申請證書,需要把 https 這塊相關的全部給它注釋掉
# https related config
# https:
  # https port for harbor, default is 443
#  port: 443
  # The path of cert and key files for nginx
#  certificate: /your/certificate/path
#  private_key: /your/private/key/path

# 啟動成功后,admin用戶的初始登錄密碼
harbor_admin_password: admin123456

5、修改 docker 守護進程配置文件

vim /etc/docker/daemon.json

加上下面這一句,讓 Docker 認為該地址是安全的,這里的 “your-server-ip” 請?zhí)鎿Q為你的服務器外網(wǎng)IP地址,“port” 替換為你的端口:

{
    "insecure-registries": [
        "your-server-ip:port"
    ]
}

“insecure-registries”:不安全的注冊表,用來配置 Docker 可以通過 HTTP 而非 HTTPS 連接的不安全鏡像倉庫地址,即:配置可信任地址。如果配置為0.0.0.0/0,則表示信任所有地址的所有私有倉庫。

示例:

保存成功后,重新加載配置并重啟Docker服務:

sudo systemctl daemon-reload
sudo systemctl restart docker

6、啟動安裝 Harbor

配置文件修改成功后,執(zhí)行 install.sh 腳本進行安裝 Harbor 

./install.sh

提示安裝成功,接下來就可以訪問 Harbor 了。通過 IP+端口 訪問:http://192.168.4.250:5001

訪問成功,由于 Harbor 是通過 Docker 管理的,所以啟動非常方便。如果首頁訪問成功說明 Docker 私有倉庫已經(jīng)部署成功了。

四、Harbor Web頁面操作說明

默認用戶名是admin,密碼是啟動時設置的密碼:admin123456

登錄成功進入主頁面,從系統(tǒng)首頁可以看到系統(tǒng)分為三個菜單:項目、日志、系統(tǒng)管理。 

1、項目

項目管理顧名思義就是用來管理項目的??梢詾槊恳粋€開發(fā)項目創(chuàng)建一個私有項目庫,然后把 Docker 鏡像存儲到指定的項目中,為每個項目實現(xiàn)項目鏡像隔離。創(chuàng)建項目的時候,Harbor提供了公開庫(public repository)和私有庫(private repository)兩種類型的鏡像存儲空間。

通過詳情信息可以看到:公開庫中的鏡像是對所有用戶可見和可訪問的,任何人都可以查看和拉取其中的鏡像。而私有庫中的鏡像則需要登錄才能訪問控制,只有被授權的用戶或團隊才能夠查看、拉取和推送鏡像。 可以根據(jù)需要創(chuàng)建相關的項目。

項目創(chuàng)建成功后,可以點擊進入項目。在里面可以為每個項目單獨設置不同的配置信息。可以為每一個項目添加成員信息。

角色權限說明:

  • 項目管理員(Project Administrator):擁有項目的最高權限,可以對項目進行全面管理,包括創(chuàng)建和刪除項目、管理項目成員和權限、配置項目屬性、查看項目日志等。
  • 維護人員(Maintainer):類似于項目管理員,但權限稍低,通常用于協(xié)助管理項目,可以進行項目的部分管理操作,如添加和刪除鏡像、配置鏡像的復制和同步規(guī)則等。
  • 開發(fā)者(Developer):具有對項目中鏡像倉庫的讀寫權限,可以拉取、推送和刪除鏡像,以及管理部分項目配置,但不能進行項目管理操作。
  • 訪客(Guest):只具有對項目中鏡像倉庫的只讀權限,可以查看鏡像和元數(shù)據(jù),但無法對鏡像進行修改或刪除操作。通常用于分享項目或鏡像給外部團隊或用戶。
  • 受限訪客(Restricted Guest):是一種更加受限的訪客角色,通常用于提供給外部用戶或系統(tǒng),具有對項目中鏡像倉庫的只讀權限,但可能會限制訪問的部分內容或功能。

在右上角顯示推送命令,可以通過提示命令進行 docker 鏡像推送。 

2、日志

日志菜單就是記錄用戶操作日志信息的。

3、系統(tǒng)管理

系統(tǒng)管理主要用來管理 Harbor 用戶人員信息、鏡像倉庫的各種配置、權限和系統(tǒng)設置。

五、Docker命令使用私有倉庫

1、登錄

登錄私有倉庫:

docker login  -u admin -p admin123456 http://192.168.4.250:5001

通過輸出可以發(fā)現(xiàn)登錄成功了。認證信息存儲在 ~/.docker/config.json 文件中,只要登錄信息存在,登錄會一直生效不需要每次推送拉取之前都登錄。 

注意:如果未修改 docker 守護進程配置文件,那么登錄時可能會報以下錯誤。

[root@localhost ~]# docker login  -u admin -p admin123456 http://192.168.4.250:5001
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
Error response from daemon: Get "https://192.168.4.250:5001/v2/": http: server gave HTTP response to HTTPS client

這是由于,docker認為這個地址是不安全的,所以需要在docker守護進程配置文件中把該地址配置為可信任地址。

vim /etc/docker/daemon.json

加上下面這一句,讓 Docker 認為該地址是安全的,這里的 “your-server-ip” 請?zhí)鎿Q為你的服務器外網(wǎng)IP地址,“port” 替換為你的端口:

{
    "insecure-registries": [
        "your-server-ip:port"
    ]
}

“insecure-registries”:不安全的注冊表,用來配置 Docker 可以通過 HTTP 而非 HTTPS 連接的不安全鏡像倉庫地址,即:配置可信任地址。如果配置為0.0.0.0/0,則表示信任所有地址的所有私有倉庫。

示例:

保存成功后,重新加載配置并重啟Docker服務:

sudo systemctl daemon-reload
sudo systemctl restart docker

配置成功后,再次嘗試登錄,這時候應該就可以登錄成功了。

2、推送鏡像

在項目中標記鏡像:

docker tag SOURCE_IMAGE[:TAG] 192.168.4.250:5001/blog_project/REPOSITORY[:TAG]

示例:

docker tag nginx:latest 192.168.4.250:5001/blog_project/nginx:v1

推送鏡像到指定項目:

docker push 192.168.4.250:5001/blog_project/REPOSITORY[:TAG]

示例:

docker push 192.168.4.250:5001/blog_project/nginx:v1

查看 Harbor 倉庫,推送成功。

3、拉取鏡像

通過另一臺服務器,使用 docker pull 從私有倉庫拉取鏡像:

docker pull 192.168.4.250:5001/blog_project/nginx:v1

拉取成功,查看下載數(shù),發(fā)現(xiàn)已經(jīng)更新了:

4、退出登錄

docker logout 192.168.4.250:5001

六、其他補充

首先我們需要先進入解壓后的 harbor 文件夾:

cd ./Software/
cd ./harbor/

到此這篇關于Docker中Harbor企業(yè)級鏡像倉庫的搭建與使用的文章就介紹到這了,更多相關Docker Harbor倉庫搭建內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家! 

相關文章

  • Node.js服務Docker容器化應用實踐小結

    Node.js服務Docker容器化應用實踐小結

    這篇文章主要介紹了Node.js服務Docker容器化應用實踐,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-09-09
  • 如何通過vs2017的Dockerfile來生成鏡像

    如何通過vs2017的Dockerfile來生成鏡像

    這篇文章主要為大家詳細介紹了如何通過vs2017的Dockerfile來生成鏡像,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • Docker 數(shù)據(jù)卷及數(shù)據(jù)容器詳細介紹及示例

    Docker 數(shù)據(jù)卷及數(shù)據(jù)容器詳細介紹及示例

    這篇文章主要介紹了Docker 數(shù)據(jù)卷及數(shù)據(jù)容器詳細介紹及示例的相關資料,Docker 很強大,不僅部署維護提高效率,docker和宿主之間的數(shù)據(jù)共享以及docker間的數(shù)據(jù)共享需要好好研究一下,需要的朋友可以參考下
    2016-11-11
  • 樹莓派4b ubuntu19 server 安裝docker-ce的安裝步驟

    樹莓派4b ubuntu19 server 安裝docker-ce的安裝步驟

    這篇文章主要介紹了樹莓派4b ubuntu19 server 安裝docker-ce的安裝步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-11-11
  • 使用docker部署grafana+prometheus配置

    使用docker部署grafana+prometheus配置

    這篇文章主要介紹了docker部署grafana+prometheus配置,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-12-12
  • 詳解如何使用Docker打包Python項目

    詳解如何使用Docker打包Python項目

    Docker是一種開源的容器化平臺,可以將應用程序及其依賴項打包到一個輕量級、可移植的容器中,通過使用Docker,可以簡化Python項目的部署和運行,提高開發(fā)效率和應用程序的可移植性,本文將介紹如何使用Docker來打包Python項目,需要的朋友可以參考下
    2023-11-11
  • 詳細docker-maven-plugin使用方法

    詳細docker-maven-plugin使用方法

    本文主要介紹了詳細docker-maven-plugin使用方法,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • 使用dockercompose搭建springboot-mysql-nginx應用

    使用dockercompose搭建springboot-mysql-nginx應用

    這篇文章主要介紹了使用dockercompose搭建springboot-mysql-nginx應用,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-03-03
  • Docker可視化面板Portainer的實現(xiàn)

    Docker可視化面板Portainer的實現(xiàn)

    Portainer是一個免費的容器管理工具,支持Docker環(huán)境的可視化管理,通過Portainer,用戶可以輕松地在Windows或Linux容器中部署服務,大大簡化了Docker容器的管理工作,感興趣的可以了解一下
    2024-11-11
  • 教你使用如何docker部署淘寶rap2服務

    教你使用如何docker部署淘寶rap2服務

    這篇文章主要介紹了教你使用如何docker部署淘寶rap2服務,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-08-08

最新評論