【4】k8s集群管理系列--harbor鏡像倉庫本地化搭建

一、harbor基本概念

?Harbor是一個由VMware開源的企業級Docker鏡像倉庫解決方案?,旨在解決企業在容器化應用部署中的痛點,提供鏡像存儲、管理、安全和分發的全生命周期管理?。Harbor擴展了Docker Registry,增加了企業級功能,如用戶管理、權限控制、鏡像掃描和鏡像復制等,支持多種認證機制,幫助企業在大規模的容器環境中實現安全、高效的鏡像管理?。

二、環境配置要求

CentOS 7/8(本教程以 CentOS 7.9 為例)
最低配置:2核CPU、4GB內存、40GB磁盤
開放端口:80(HTTP)、443(HTTPS)、4443(Harbor數據同步端口)

注意:操作系統需要安裝docker、docker-compose,如何安裝,見專欄另外一篇文章:
搭建k8s集群系列(二進制部署)之安裝docker和k8s自簽證書

三、下載安裝包

3.1 下載離線安裝包

wget https://github.com/goharbor/harbor/releases/download/v2.7.0/harbor-offline-installer-v2.7.0.tgz
tar -xzvf harbor-offline-installer-v2.7.0.tgz
cd harbor

3.2 修改配置文件

cp harbor.yml.tmpl harbor.yml
vim harbor.yml

修改以下關鍵配置:

hostname: 192.168.1.23  # 改為服務器IP或域名
http:port: 80
https:port: 443certificate: /opt/harbor/ssl/harbor-server.pem  # 若需HTTPS,配置證書路徑private_key: /opt/harbor/ssl/harbor-server-key.pem  # 若無需HTTPS,注釋整個https塊
harbor_admin_password: Harbor12345     # 管理員默認密碼(需修改!)
data_volume: /data/harbor # 數據存儲路徑(確保目錄存在)

如果啟用https,則需要生成證書,這里采用自簽證書:

自簽證書工具安裝:
cfssl 是一個開源的證書管理工具,使用 json 文件生成證書,相比 openssl 更方便使用。

# 下載cfssl工具(二進制可執行文件)
wget https://pkg.cfssl.org/R1.2/cfssl_linux-amd64
wget https://pkg.cfssl.org/R1.2/cfssljson_linux-amd64
wget https://pkg.cfssl.org/R1.2/cfssl-certinfo_linux-amd64
# 授可執行權限
chmod +x cfssl_linux-amd64 cfssljson_linux-amd64 cfssl-certinfo_linux-amd64
# 移動到bin目錄,方便直接在命令行使用該工具命令
mv cfssl_linux-amd64 /usr/bin/cfssl
mv cfssljson_linux-amd64 /usr/local/bin/cfssljson
mv cfssl-certinfo_linux-amd64 /usr/bin/cfssl-certinfo

生成CA根證書-寫如CA配置文件:

# 寫入ca配置文件
cat > ca-config.json << EOF
{
"signing": {
"default": {
"expiry": "87600h"
},
"profiles": {
"harbor": {
"expiry": "87600h",
"usages": [
"signing",
"key encipherment",
"server auth",
"client auth"
]
}
}
}
}
EOF

CA根證書申請文件:

# 寫入ca-csr文件
cat > ca-csr.json << EOF
{
"CN": "harbor",
"key": {
"algo": "rsa",
"size": 2048
},
"names": [
{
"C": "CN",
"L": "Beijing",
"ST": "Beijing",
"O": "harbor",
"OU": "System"
}
]
}
EOF

生成根證書:
cfssl gencert -initca ca-csr.json | cfssljson -bare ca -

申請域名證書請求文件:

cat > harbor-server-csr.json << EOF
{
"CN": "harbor",
"hosts": [],
"key": {
"algo": "rsa",
"size": 2048
},
"names": [
{
"C": "CN",
"L": "BeiJing",
"ST": "BeiJing",
"O": "harbor",
"OU": "System"
}
]
}
EOF

執行生成域名證書:

cfssl gencert -ca=ca.pem -ca-key=ca-key.pem -config=ca-config.json -profile=harbor harbor-server-csr.json | cfssljson -bare harbor-server

3.3 執行安裝

# 切換到harbor解壓目錄
sh ./prepare #執行安裝前準備的腳本,然后會生成docker-compose配置文件和common/config配置文件目錄及配置文件
sh ./install.sh #執行安裝
# 等待安裝完成#驗證安裝狀態
docker-compose ps

輸出 ? ----Harbor has been installed and started successfully.---- 表示成功。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/79205.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/79205.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/79205.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Docker 安裝 Elasticsearch 8.x

Docker 安裝 Elasticsearch 8.x 前言一、準備工作二、設置容器的目錄結構三、啟動一個臨時的容器來復制配置文件四、復制配置文件到本地目錄五、刪除臨時容器六、創建并運行容器&#xff0c;掛載本地目錄七、修改文件配置監聽端口八、端口配置&#xff1a;Host 網絡模式 vs Por…

C#: 用Libreoffice實現Word文件轉PDF

現實場景中要實現Word格式轉PDF格式還是比較常見的。 如果要用開源的組件&#xff0c;只有用Libreoffice了。 一、下載安裝Libreoffice 先進入如下鏈接&#xff0c;找到最新版本和匹配的操作系統來安裝。 官網試過&#xff0c;下載是能下載&#xff0c;但安裝了用不了&…

MoogDB數據庫日常維護技巧與常見問題解析

在當今的數據驅動世界中&#xff0c;數據庫作為信息存儲與管理的核心組件&#xff0c;扮演著舉足輕重的角色。MoogDB作為一款高性能、易擴展的數據庫解決方案&#xff0c;越來越受到開發者和企業的青睞。為了確保MoogDB的穩定性與高性能&#xff0c;定期的日常維護及對常見問題…

JAVA多線程的幾種實現方式

?1. 繼承 Thread 類? ?原理?&#xff1a;通過繼承 Thread 類并重寫 run() 方法定義線程任務&#xff0c;調用 start() 啟動線程?。?代碼示例?&#xff1a; public class MyThread extends Thread {Overridepublic void run() {System.out.println("線程 " g…

爬蟲(基本知識介紹,urllib庫的說明)

爬蟲 爬蟲基礎&#xff08;一些基本原理的梳理&#xff09; scheme://[username:password]hostname[:port][/path][;parameters][?query][#fragment] 注&#xff1a; parameters 和 query 混用&#xff0c;并且現在 query 用的多 ?query 查詢 &#xff0c;用來查詢某類資源…

探秘串口服務器廠家:背后的故事與應用

在科技飛速發展的今天&#xff0c;串口服務器作為連接串口設備與網絡的橋梁&#xff0c;在工業自動化、智能交通、智能家居等眾多領域發揮著關鍵作用。你是否好奇&#xff0c;那些生產串口服務器的廠家究竟有著怎樣的故事&#xff1f;它們的產品背后又蘊含著怎樣的原理呢&#…

工廠能耗系統智能化解決方案 —— 安科瑞企業能源管控平臺

安科瑞顧強 政策背景與“雙碳”戰略驅動 2025年《政府工作報告》明確提出“單位國內生產總值能耗降低3%左右”的目標&#xff0c;要求通過產業結構升級&#xff08;如高耗能行業技術革新或轉型&#xff09;、能源結構優化&#xff08;提高非化石能源占比&#xff09;及數字化…

BI面向模型開發和面向報表開發,有什么區別?

在數字化時代&#xff0c;商業智能&#xff08;BI&#xff09;已成為企業決策不可或缺的工具。BI項目實施時&#xff0c;通常有兩種開發模式&#xff1a;面向模型開發和面向報表開發。雖然兩者都旨在通過數據驅動決策&#xff0c;但在開發邏輯、目標價值和技術路徑上存在顯著差…

OpenHarmony人才認證證書

OpenHarmony人才認證體系目前支持初級工程師認證&#xff0c;要求了解OpenHarmony開源項目、生態進展及系統移植等基礎知識&#xff0c;熟練掌握OpenHarmony的ArkUI、分布式軟總線、分布式硬件、分布式數據管理等基礎能力使用&#xff0c;具備基礎的開發能力。 考試流程可參考O…

映射網絡路路徑和ftp路徑原理是什么,如何使用,有什么區別

文章目錄 一、原理1. 映射網絡路徑2. FTP路徑 二、使用方法1. 映射網絡路徑2. FTP路徑 三、主要區別1. 協議與功能2. 安全性與權限3. 適用場景 四、如何選擇&#xff1f;五、注意事項 映射網絡路徑&#xff08;如SMB/CIFS或NFS&#xff09;和FTP路徑&#xff08;FTP/FTPS/SFTP&…

Windows 圖形顯示驅動開發-WDDM 1.2功能—Windows 8 中的 DirectX 功能改進(一)

Windows 8包括 Microsoft DirectX 功能改進&#xff0c;使開發人員、最終用戶和系統制造商受益。 功能改進在以下幾個方面&#xff1a; 像素格式 (5551、565、4444) &#xff1a;在低功耗硬件配置下&#xff0c;DirectX 應用程序的性能更高。雙精度著色器功能&#xff1a;高級…

GitHub 趨勢日報 (2025年04月15日)

本日報由 TrendForge 系統生成 https://trendforge.devlive.org/ &#x1f4c8; 今日整體趨勢 Top 10 排名項目名稱項目描述今日獲星總星數語言1yeongpin/cursor-free-vip[Support 0.48.x]&#xff08;Reset Cursor AI MachineID & Auto Sign Up / In & Bypass Higher…

2025年推薦使用的開源大語言模型top20:核心特性、選擇指標和開源優勢

李升偉 編譯 隨著人工智能技術的持續發展&#xff0c;開源大型語言模型&#xff08;LLMs&#xff09;正變得愈發強大&#xff0c;使最先進的AI能力得以普及。到2025年&#xff0c;開源生態系統中涌現出多個關鍵模型&#xff0c;它們在各類應用場景中展現出獨特優勢。 大型語言…

回收鍍錫廢水的必要性(筆記)

鍍錫廢水若直接排放&#xff0c;將對環境、經濟和社會造成多重危害&#xff0c;其回收處理具有迫切性和深遠意義。以下從環境、資源、法規、技術與實踐、可持續發展五大維度展開分析&#xff1a; 一、環境危害的緊迫性&#xff1a;重金屬與污染物的致命威脅 成分復雜&#xf…

14.2 - VDMA彩條顯示實驗之動態時鐘

文章目錄 1 實驗任務2 系統框圖3 硬件設計4 軟件設計4.1 dynclk_api.h文件4.2 math_compat.h文件4.3 dynclk_api.c文件4.4 main.c文件 1 實驗任務 參見14.1。 2 系統框圖 參見14.1。 3 硬件設計 注意事項&#xff1a;基于14.1做如下改動 使能Clocking Wizard IP核的Dynam…

在邊緣端進行tensorflow模型的部署(小白初探)

1.配置tensorflow的環境 &#xff08;我是安裝GPU版本的&#xff09; 建議參考這個博主的文章&#xff0c;確實非常快速&#xff01; 十分鐘安裝Tensorflow-gpu2.6.0本機CUDA12 以及numpymatplotlib各包版本協調問題_tensorflow cuda12-CSDN博客 2.學習自制數據集 &#xf…

windows下使用nginx + waitress 部署django

架構介紹 linux一般采用nginx uwsgi部署django&#xff0c;在Windows下&#xff0c;可以取代uwsgi的選項包括Waitressa、Daphnea、Hypercoma和Gunicorna(通過WSLa 運行)。windows服務器一般采用nginx waitress 部署django&#xff0c;,他們的關系如下 django是WEB應用…

利用pnpm patch命令實現依賴包熱更新:精準打補丁指南

需求場景 在Element Plus的el-table組件二次開發中&#xff0c;需新增列顯示/隱藏控件功能。直接修改node_modules源碼存在兩大痛點&#xff1a; 團隊協作時修改無法同步 依賴更新導致自定義代碼丟失 解決方案選型 通過patch-package工具實現&#xff1a; &#x1f4e6; 非…

ThinkPad T520 無法讀到硬盤 問題排查思路

錯誤提示&#xff1a;2100:detection error on hdd0(Main hdd) 1、判斷錯誤提示含義 表示電腦在啟動時無法檢測到主硬盤&#xff08;HDD0&#xff09;。 2、 常見原因&#xff1a; 硬盤松動或接觸不良 → 特別是筆記本在移動或震動后&#xff0c;硬盤排線松了。 硬盤損壞 →…

Doris部署生產集群最低要求的部署方案

Doris生產集群最低部署方案&#xff08;2025年4月版&#xff09; 一、節點規劃與數量 1. FE節點&#xff08;Frontend&#xff09; 數量&#xff1a;至少 3個節點&#xff08;1個Follower 2個 Observer&#xff09;&#xff0c;確保高可用&#xff08;HA&#xff09;。角色分…