前言
華為云 828 企業(yè)上云節(jié),F(xiàn)lexus X 實(shí)例攜手 Harbor 私有鏡像倉(cāng)庫(kù),共創(chuàng)云上安全高效新生態(tài)!Flexus X 以其卓越性能與穩(wěn)定性,為 Harbor 提供了理想的運(yùn)行環(huán)境。Harbor 作為領(lǐng)先的私有鏡像倉(cāng)庫(kù),與 Flexus X 完美結(jié)合,助力企業(yè)輕松管理 Docker 鏡像,確保應(yīng)用部署的安全與高效。828 特惠期間,選擇 Flexus X + Harbor,不僅享受華為云的強(qiáng)大技術(shù)支持,還能在云上構(gòu)建更加安全、可控的應(yīng)用環(huán)境。企業(yè)上云,就選 Flexus X + Harbor,讓數(shù)字化轉(zhuǎn)型之路更加穩(wěn)健!
鏈接直達(dá):華為云Flexus云服務(wù)器X實(shí)例
Harbor 介紹
Harbor 是一個(gè)開源的企業(yè)級(jí) Registry 服務(wù)器,用于管理和存儲(chǔ) Docker 鏡像和 OCI 容器鏡像。作為一個(gè)高可用、安全可靠的容器鏡像倉(cāng)庫(kù),Harbor 提供了豐富的功能和管理工具,以幫助組織有效地構(gòu)建和管理容器鏡像。
Harbor 架構(gòu)及特點(diǎn)
開源與社區(qū)支持:Harbor 是開源的,這意味著其源代碼是公開的,并且社區(qū)成員可以自由地貢獻(xiàn)代碼、修復(fù)漏洞和增強(qiáng)功能。
企業(yè)級(jí)功能:Harbor 提供了比 Docker 官方 Registry 更豐富的企業(yè)級(jí)功能,如用戶管理、權(quán)限控制、鏡像簽名和驗(yàn)證、漏洞掃描等。
多租戶支持:Harbor 支持多租戶環(huán)境,允許不同的用戶或組織擁有私有的鏡像倉(cāng)庫(kù)。
容器化部署:Harbor 以容器化的形式提供,這意味著它可以在任何支持 Docker 的平臺(tái)上運(yùn)行。
Flexus X 實(shí)例上搭建 Harbor 的好處
高性能與靈活性:Flexus X 實(shí)例作為華為云推出的下一代柔性算力云服務(wù)器,具有卓越的性能表現(xiàn)。通過(guò) X-Turbo 加速技術(shù)和瑤光云腦智能調(diào)度,F(xiàn)lexus X 實(shí)例能夠顯著提升 Harbor 的運(yùn)行效率,確保鏡像倉(cāng)庫(kù)的穩(wěn)定性和高效性。
快速部署:Flexus X 實(shí)例支持快速部署和一鍵操作,用戶可以在短時(shí)間內(nèi)完成 Harbor 的搭建和配置工作,提高業(yè)務(wù)上線的速度。
良好兼容性:Flexus X 實(shí)例支持多種操作系統(tǒng)和鏡像類型,包括 Huawei Cloud EulerOS 2.0 等公共鏡像,能夠滿足 Harbor 在不同操作系統(tǒng)環(huán)境下的運(yùn)行需求。
系統(tǒng)設(shè)置
關(guān)閉防火墻和 selinux
[root@flexusx-251f~]# systemctl stop firewalld.service[root@flexusx-251f~]# systemctl disable firewalld.service[root@flexusx-251f~]# setenforce 0
環(huán)境規(guī)劃
Harbor 安裝
需要了解:
?采用 docker 方式進(jìn)行部署 Harbor 企業(yè)級(jí)私有鏡像倉(cāng)庫(kù)搭建
?詳細(xì)購(gòu)買配置實(shí)例可參考文章:快速部署華為云Flexus X實(shí)例,開啟您的云端之旅
?部署 docker 服務(wù)請(qǐng)參考文章:華為FlexusX與Docker+Nginx的高效整合之路
下載安裝包并解壓
Harbor 安裝包下載地址,下載之后可通過(guò)遠(yuǎn)程工具進(jìn)行傳包
[root@flexusx-251f~]# mkdir harbor[root@flexusx-251f~]# cd harbor/[root@flexusx-251fharbor]# lsharbor-offline-installer-v2.7.0.tgz[root@flexusx-251fharbor]# tar -zxvfharbor-offline-installer-v2.7.1.tgzharbor/harbor.v2.7.1.tar.gzharbor/prepareharbor/LICENSEharbor/install.shharbor/common.shharbor/harbor.yml.tmpl
配置 Harbor
修改 harbor.yml
[root@flexusx-251fharbor]# lsharborharbor-offline-installer-v2.7.1.tgz[root@flexusx-251fharbor]# cd harbor/[root@flexusx-251fharbor]# lscommon.shharbor.v2.7.1.tar.gz harbor.yml.tmpl install.sh LICENSE prepare[root@flexusx-251fharbor]# cp harbor.yml.tmpl harbor.yml[root@flexusx-251fharbor]# vim harbor.yml#修改主機(jī)名為本機(jī) ip 地址 # Configuration file of Harbor# 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.hostname:123.249.27.118#修改端口號(hào)為 4000,可以自定義 # http related confighttp: # port for http, default is 80. If https enabled, this port will redirect to https portport:4000#注釋 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
修改 docker.service
[root@flexusx-251fharbor]# vim /lib/systemd/system/docker.service# #在 ExecStart 參數(shù)后面添加--insecure-registry=123.249.27.117:4000ExecStart=/usr/bin/dockerd -Hfd:// --containerd=/run/containerd/containerd.sock --insecure-registry=123.249.27.117:4000#重新啟動(dòng) docker 服務(wù)[root@flexusx-251fharbor]# systemctl daemon-reload[root@flexusx-251fharbor]# systemctl restart docker.service
導(dǎo)入離線鏡像
[root@flexusx-251fharbor]# lsharborharbor-2.7.1.tar harbor-offline-installer-v2.7.1.tgz[root@flexusx-251fharbor]# docker load -iharbor-2.7.1.tar[root@flexusx-251fharbor]# docker imagesREPOSITORYTAG IMAGE ID CREATED SIZEgoharbor/harbor-exporterv2.7.1 d40eb452ec72 18 months ago 96.5MBgoharbor/chartmuseum-photonv2.7.1 e6ab349a4f12 18 months ago 227MBgoharbor/redis-photonv2.7.1 229dd1844a26 18 months ago 127MBgoharbor/trivy-adapter-photonv2.7.1 729fab8418df 18 months ago 442MBgoharbor/notary-server-photonv2.7.1 12adb40b7a3b 18 months ago 113MBgoharbor/notary-signer-photonv2.7.1 f114329e0165 18 months ago 110MBgoharbor/harbor-registryctlv2.7.1 9b2219d529c8 18 months ago 140MBgoharbor/registry-photonv2.7.1 9d50b10d3700 18 months ago 78.1MBgoharbor/nginx-photonv2.7.1 e98018335c0d 18 months ago 126MBgoharbor/harbor-logv2.7.1 eeb93d98a358 18 months ago 133MBgoharbor/harbor-jobservicev2.7.1 829d13e6aae7 18 months ago 252MBgoharbor/harbor-corev2.7.1 49d6c8a15d6c 18 months ago 215MBgoharbor/harbor-portalv2.7.1 fe05b1b0bcfd 18 months ago 135MBgoharbor/harbor-dbv2.7.1 b3f8d9d6c213 18 months ago 174MBgoharbor/preparev2.7.1 d9e019294af2 18 months ago 164MB
運(yùn)行腳本 prepare 準(zhǔn)備鏡像
[root@flexusx-251fharbor]# ./preparepreparebase dir is set to /root/harbor/harborWARNING:root:WARNING:HTTP protocol is insecure. Harbor will deprecate http protocol in the future. Please make sure to upgrade to httpsGeneratedconfiguration file: /config/portal/nginx.confGeneratedconfiguration file: /config/log/logrotate.confGeneratedconfiguration file: /config/log/rsyslog_docker.confGeneratedconfiguration file: /config/nginx/nginx.confGeneratedconfiguration file: /config/core/envGeneratedconfiguration file: /config/core/app.confGeneratedconfiguration file: /config/registry/config.ymlGeneratedconfiguration file: /config/registryctl/envGeneratedconfiguration file: /config/registryctl/config.ymlGeneratedconfiguration file: /config/db/envGeneratedconfiguration file: /config/jobservice/envGeneratedconfiguration file: /config/jobservice/config.ymlGeneratedand saved secret to file: /data/secret/keys/secretkeySuccessfullycalled func: create_root_certGeneratedconfiguration file: /compose_location/docker-compose.ymlCleanup the input dir
檢查腳本命令
我們系統(tǒng)中 docker compose 的命令為 docker-compose,和腳本中相同
如果不同需要修改 common.sh 和 install.sh 中的 docker-compose
#檢查 common.sh[root@flexusx-251fharbor]# vim common.sh 119elif [[ $(docker-compose--version)=~ (([0-9]+).([0-9]+)([.0-9]*))]]#檢查 install.sh[root@flexusx-251fharbor]# vim install.sh 26DOCKER_COMPOSE=docker-compose
安裝 Harbor
[root@flexusx-251fharbor]# ./install.sh#部分日志流記錄[Step0]: checking if docker is installed ...Note:docker version: 27.1.1[Step1]: checking docker-compose is installed ...Note:Docker Compose version v2.29.1[Step2]: loading Harbor images ........................itwill be ignored, please remove it to avoid potential confusion[+]Running 10/10?Network harbor_harbor Created 0.0s?Container harbor-log Started 0.3s?Container harbor-portal Started 0.4s?Container harbor-db Started 0.4s?Container registryctl Started 0.5s?Container redis Started 0.5s?Container registry Started 0.4s?Container harbor-core Started 0.6s?Container nginx Started 0.7s?Container harbor-jobservice Started 0.7s?----Harborhas been installed and started successfully.----
登錄 Harbor
在控制臺(tái)配置安全組規(guī)則,放行 4000 端口
默認(rèn)管理員賬號(hào) admin,密碼為 harbor.yml文件中的自定義密碼
登錄訪問(wèn):http://主機(jī)地址:4000
測(cè)試
創(chuàng)建項(xiàng)目
訪問(wèn)級(jí)別設(shè)置為公開,可以進(jìn)行匿名拉取,存儲(chǔ)容量默認(rèn)-1 表示大小沒(méi)有限制
推送鏡像
進(jìn)入項(xiàng)目后,在右上角推送命令中可查看操作語(yǔ)句,注意推送鏡像之前需要身份認(rèn)證
#標(biāo)記鏡像[root@flexusx-251fharbor]# docker tag mysql:latest 123.249.27.118:4000/mycloud/mysql:latest[root@flexusx-251fharbor]# docker images |grepmysqlmysql5.7 87eca374c0ed 3 years ago 447MB123.249.27.118:4000/mycloud/mysqllatest 8457e9155715 3 years ago 546MBmysqllatest 8457e9155715 3 years ago 546MB#登錄倉(cāng)庫(kù)(身份驗(yàn)證)[root@flexusx-251fharbor]# docker login 123.249.27.118:4000Username:adminPassword:Errorresponse from daemon: Get "https://123.249.27.118:4000/v2/": http: server gave HTTP response to HTTPS client
報(bào)錯(cuò)處理,修改客戶端/etc/docker/daemon.json,增加 insecure-registries 內(nèi)容
[root@flexusx-251fharbor]# vim /etc/docker/daemon.json[root@flexusx-251fharbor]# cat /etc/docker/daemon.json{"registry-mirrors":[ "https://2a6bf1988cb6428c877f723ec7530dbc.mirror.swr.myhuaweicloud.com"],"insecure-registries":[ "123.249.27.118:4000"]}[root@flexusx-251fharbor]# systemctl daemon-reload[root@flexusx-251fharbor]# systemctl restart docker.service[root@flexusx-251fharbor]# docker login 123.249.27.118:4000Username:adminPassword:WARNING!Your password will be stored unencrypted in /root/.docker/config.json.Configurea credential helper to remove this warning. Seehttps://docs.docker.com/engine/reference/commandline/login/#credentials-storeLoginSucceeded#推送鏡像(可在 web 頁(yè)面進(jìn)行查看)[root@flexusx-251fharbor]# docker push 123.249.27.118:4000/mycloud/mysql:latest#拉取鏡像 dockerpull 123.249.27.118:4000/mycloud/mysql:latest
搭建完成,此刻你就擁有了屬于自己的私有鏡像倉(cāng)庫(kù)
體驗(yàn)和感受
Harbor,作為開源的 Docker 鏡像倉(cāng)庫(kù)管理項(xiàng)目,以其豐富的功能、靈活的擴(kuò)展性和高度的安全性,成為了企業(yè)構(gòu)建私有鏡像倉(cāng)庫(kù)的首選。與 Flexus X 實(shí)例的強(qiáng)強(qiáng)聯(lián)合,不僅實(shí)現(xiàn)了鏡像的快速上傳、下載與共享,還通過(guò)嚴(yán)格的權(quán)限管理和加密傳輸機(jī)制,確保了鏡像數(shù)據(jù)的安全無(wú)虞。
在 828 華為云企業(yè)上云節(jié)之際,和我一起體驗(yàn) Flexus X 實(shí)例與 Harbor 私有鏡像倉(cāng)庫(kù)的完美結(jié)合。這一組合,將為您的云端部署帶來(lái)前所未有的便捷與安全。無(wú)論是快速構(gòu)建應(yīng)用環(huán)境,還是實(shí)現(xiàn)應(yīng)用的持續(xù)集成與持續(xù)部署,F(xiàn)lexus X 實(shí)例與 Harbor 私有鏡像倉(cāng)庫(kù)都能助您一臂之力。
選擇 Flexus X 實(shí)例與 Harbor 私有鏡像倉(cāng)庫(kù)的組合,就是選擇了云端部署的新高度。點(diǎn)擊下方鏈接,立即開始搭建屬于你的企業(yè)級(jí)私有鏡像倉(cāng)庫(kù)吧!
產(chǎn)品鏈接:華為云Flexus云服務(wù)器X實(shí)例直播建站服務(wù)器-華為云
審核編輯 黃宇
-
云服務(wù)器
+關(guān)注
關(guān)注
0文章
791瀏覽量
13763 -
華為云
+關(guān)注
關(guān)注
3文章
2763瀏覽量
18110
發(fā)布評(píng)論請(qǐng)先 登錄
docker-proxy鏡像加速倉(cāng)庫(kù)

華為 FlexusX 與 Docker+Nginx 的高效整合之路

華為云 Flexus X 實(shí)例性能實(shí)測(cè):速度與穩(wěn)定性的完美結(jié)合

華為云彈性云服務(wù)器 FlexusX 實(shí)例下的 Nginx 性能測(cè)試

解鎖高效項(xiàng)目管理,Zentao 在華為云 Flexusx 容器化部署與應(yīng)用指南

高效協(xié)同,云端先行,Collabora Online 在 FlexusX 上的部署與實(shí)戰(zhàn)分享

華為云 FlexusX 實(shí)例下的 Kafka 集群部署實(shí)踐與性能優(yōu)化

華為云 X 實(shí)例的鏡像管理詳解

在華為云 FlexusX 實(shí)例上實(shí)現(xiàn) Docker 容器的實(shí)時(shí)監(jiān)控與可視化分析

優(yōu)化企業(yè)運(yùn)營(yíng)流程,華為云 Flexusx 實(shí)例下 Odoo ERP 系統(tǒng)的完整解決方案

云服務(wù)器Flexus X實(shí)例,Docker集成搭建Gitea私有倉(cāng)庫(kù)

構(gòu)建高效搜索解決方案,Elasticsearch & Kibana 的完美結(jié)合

使用Nexus在本地搭建npm、yum和maven私有倉(cāng)庫(kù)

評(píng)論