日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

教你如何用Harbor 私有镜像仓库搭建

發布時間:2023/12/4 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 教你如何用Harbor 私有镜像仓库搭建 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

? ? 一、Harbor是什么??

Docker有個形象的比喻叫集裝箱,kubernetes是舵手,而Harbor是港灣,其實是用來保存容器鏡像的倉庫,企業使用docker、kubernetes時,一般都需要個私有鏡像倉庫的,Harbor就是其中的佼佼者。官方的解釋:Harbor是一個用于存儲和分發Docker鏡像的企業級Registry服務器。

? ? 二、Harbor的架構 ? ?

harbor的整體架構還是很清晰的,下面簡單介紹一下,下圖展示harbor主要的功能組件和信息流向。

Proxy: Harbor的registry、UI、token services等組件,都處在一個反向代理后邊。該代理將來自瀏覽器、docker clients的請求轉發到后端服務上。

Registry: 負責存儲Docker鏡像,以及處理Docker push/pull請求。因為Harbor強制要求對鏡像的訪問做權限控制, 在每一次push/pull請求時,Registry會強制要求客戶端從token service那里獲得一個有效的token。

Core services: Harbor的核心功能,主要包括如下3個服務:

UI: 作為Registry Webhook, 以圖像用戶界面的方式輔助用戶管理鏡像。1) WebHook是在registry中配置的一種機制, 當registry中鏡像發生改變時,就可以通知到Harbor的webhook endpoint。Harbor使用webhook來更新日志、初始化同步job等。2) Token service會根據該用戶在一個工程中的角色,為每一次的push/pull請求分配對應的token。假如相應的請求并沒有包含token的話,registry會將該請求重定向到token service。3) Database 用于存放工程元數據、用戶數據、角色數據、同步策略以及鏡像元數據。

Job services: 主要用于鏡像復制,本地鏡像可以被同步到遠程Harbor實例上。

Log: 負責收集其他模塊的日志到一個地方

? ?三、Harbor使用 ? ?

1、安裝 docker

1.1 安裝依賴

## 安裝依賴 yum install -y yum-utils device-mapper-persistent-data lvm2

1.2 添加阿里云yum源

yum-config-manager \ --add-repo \ http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

1.3 更新yum源及安裝Docker-ce

yum?update?-y??&&?yum?install?-y?docker-ce

1.4 編寫daemon.json配置文件

mkdir /etc/docker ## 創建 /etc/docker 目錄 ## 配置 daemon. insecure-registries 是后續用來訪問 harbor 私有倉庫的, 表示可信任的倉庫地址 ## 192.168.3.155:9999為harbor私服的地址和端口 cat > /etc/docker/daemon.json <<eof< span=""> {"exec-opts": ["native.cgroupdriver=systemd"], "log-driver": "json-file", "registry-mirrors": ["https://tosnxdv7.mirror.aliyuncs.com"], "log-opts": {"max-size": "100m"}, "insecure-registries": ["192.168.3.193"] } EOF</eof<>

1.5 重啟docker服務

systemctl?daemon-reload?&&?systemctl?restart?docker?&&?systemctl?enable?docker

2、安裝 docker-compose

wget https://linux-soft-ware.oss-cn-shenzhen.aliyuncs.com/docker-compose chmod +x docker-compose mv docker-compose /usr/local/bin

3、安裝 Harbor

3.1 下載Harbor

wget?https://github.com/goharbor/harbor/releases/download/v2.1.4/harbor-offline-installer-v2.1.4.tgz

3.2 解壓

## 創建解壓目錄 mkdir /usr/app ## 解壓到指定目錄 tar xf harbor-offline-installer-v2.1.4.tgz ?-C /usr/app

3.3 編輯harbor.yml配置文件

vi /usr/app/harborcp harbor.yml.tmpl harbor.ymlvim /usr/app/harbor.ymlhostname: 192.168.3.193 # 修改為自己的IP地址或者域名 # http related config ## 刪除下面的https配置 http:# port for http, default is 80. If https enabled, this port will redirect to https portport: 80 # 修改登錄Harbor的web端密碼(用于管理界面的登錄) harbor_admin_password: 123456

4、安裝 harbor

4.1 安裝Harbor

./harbor/install.sh

4.2 訪問 harbor

輸入 https://192.168.3.193, 輸入 admin/12345

5、測試能否登陸私有倉庫

5.1 在客戶端編輯Docker配置文件

vi /etc/docker/daemon.json### 編輯內容如下: }"exec-opts": ["native.cgroupdriver=systemd"],"log-driver": "json-file","registry-mirrors": ["https://tosnxdv7.mirror.aliyuncs.com"],"log-opts": {"max-size": "100m"},## 添加Harbor倉庫的地址(必須添加)"insecure-registries": ["192.168.3.193"] }

5.2 加載配置文件重啟Docker服務

systemctl?daemon-reload?&&?systemctl?restart?docker

5.3 使用docker login測下,是否成功

docker login 192.168.3.193 Username: admin Password: 123456

6、測試鏡像上傳和下載

6.1 docker tag打標簽

docker?tag?nginx:latest?192.168.3.193/test/nginx:V2

6.2 docker push 推送鏡像到倉庫

?docker?push?192.168.3.193/test/nginx:V2

6.3 docker pull 拉取鏡像

docker?pull?192.168.3.193/test/nginx:V2

總結

以上是生活随笔為你收集整理的教你如何用Harbor 私有镜像仓库搭建的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。