0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Flexusx 实例与 Harbor 私有镜像仓库的完美结合

jf_21561199 来源:jf_21561199 作者:jf_21561199 2025-01-22 18:04 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

前言

华为云 828 企业上云节,Flexus X 实例携手 Harbor 私有镜像仓库,共创云上安全高效新生态!Flexus X 以其卓越性能与稳定性,为 Harbor 提供了理想的运行环境。Harbor 作为领先的私有镜像仓库,与 Flexus X 完美结合,助力企业轻松管理 Docker 镜像,确保应用部署的安全与高效。828 特惠期间,选择 Flexus X + Harbor,不仅享受华为云的强大技术支持,还能在云上构建更加安全、可控的应用环境。企业上云,就选 Flexus X + Harbor,让数字化转型之路更加稳健!

链接直达华为云Flexus云服务器X实例

wKgZO2d2Km6ANkf-AAEA43MSbXE820.png

Harbor 介绍

Harbor 是一个开源的企业级 Registry 服务器,用于管理和存储 Docker 镜像和 OCI 容器镜像。作为一个高可用、安全可靠的容器镜像仓库,Harbor 提供了丰富的功能和管理工具,以帮助组织有效地构建和管理容器镜像。

wKgZPGd2Km-AVyj9AABsrbJjI38884.png

Harbor 架构及特点

wKgZO2d2Km-AYWSlAAEEqpRPcwQ225.png

开源与社区支持:Harbor 是开源的,这意味着其源代码是公开的,并且社区成员可以自由地贡献代码、修复漏洞和增强功能。

企业级功能:Harbor 提供了比 Docker 官方 Registry 更丰富的企业级功能,如用户管理、权限控制、镜像签名和验证、漏洞扫描等。

多租户支持:Harbor 支持多租户环境,允许不同的用户或组织拥有私有的镜像仓库。

容器化部署:Harbor 以容器化的形式提供,这意味着它可以在任何支持 Docker 的平台上运行。

Flexus X 实例上搭建 Harbor 的好处

高性能与灵活性:Flexus X 实例作为华为云推出的下一代柔性算力云服务器,具有卓越的性能表现。通过 X-Turbo 加速技术和瑶光云脑智能调度,Flexus X 实例能够显著提升 Harbor 的运行效率,确保镜像仓库的稳定性和高效性。

快速部署:Flexus X 实例支持快速部署和一键操作,用户可以在短时间内完成 Harbor 的搭建和配置工作,提高业务上线的速度。

良好兼容性:Flexus X 实例支持多种操作系统和镜像类型,包括 Huawei Cloud EulerOS 2.0 等公共镜像,能够满足 Harbor 在不同操作系统环境下的运行需求。

系统设置

关闭防火墙和 selinux

[root@flexusx-251f~]# systemctl stop firewalld.service[root@flexusx-251f~]# systemctl disable firewalld.service[root@flexusx-251f~]# setenforce 0

环境规划

Harbor 安装

需要了解:

•采用 docker 方式进行部署 Harbor 企业级私有镜像仓库搭建

•详细购买配置实例可参考文章:快速部署华为云Flexus X实例,开启您的云端之旅

•部署 docker 服务请参考文章:华为FlexusX与Docker+Nginx的高效整合之路

下载安装包并解压

Harbor 安装包下载地址,下载之后可通过远程工具进行传包

[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#修改主机名为本机 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#修改端口号为 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 参数后面添加--insecure-registry=123.249.27.117:4000ExecStart=/usr/bin/dockerd -Hfd:// --containerd=/run/containerd/containerd.sock --insecure-registry=123.249.27.117:4000#重新启动 docker 服务[root@flexusx-251fharbor]# systemctl daemon-reload[root@flexusx-251fharbor]# systemctl restart docker.service

导入离线镜像

[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

运行脚本 prepare 准备镜像

[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

检查脚本命令

我们系统中 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

在控制台配置安全组规则,放行 4000 端口

wKgZPGd2Km-Adw-bAAEFZt63iKA247.png

默认管理员账号 admin,密码为 harbor.yml文件中的自定义密码

登录访问:http://主机地址:4000

wKgZO2d2Km-ALcSeAABuVq63neY417.png

测试

创建项目

访问级别设置为公开,可以进行匿名拉取,存储容量默认-1 表示大小没有限制

wKgZPGd2KnCAf2ZpAACaxSU7fVE358.png

推送镜像

进入项目后,在右上角推送命令中可查看操作语句,注意推送镜像之前需要身份认证

wKgZO2d2KnCAUN6aAAE73opNLbM816.png

#标记镜像[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#登录仓库(身份验证)[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

报错处理,修改客户端/etc/docker/daemon.json,增加 insecure-registries 内容

[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 页面进行查看)[root@flexusx-251fharbor]# docker push 123.249.27.118:4000/mycloud/mysql:latest#拉取镜像 dockerpull 123.249.27.118:4000/mycloud/mysql:latest

搭建完成,此刻你就拥有了属于自己的私有镜像仓库

体验和感受

Harbor,作为开源的 Docker 镜像仓库管理项目,以其丰富的功能、灵活的扩展性和高度的安全性,成为了企业构建私有镜像仓库的首选。与 Flexus X 实例的强强联合,不仅实现了镜像的快速上传、下载与共享,还通过严格的权限管理和加密传输机制,确保了镜像数据的安全无虞。

在 828 华为云企业上云节之际,和我一起体验 Flexus X 实例与 Harbor 私有镜像仓库的完美结合。这一组合,将为您的云端部署带来前所未有的便捷与安全。无论是快速构建应用环境,还是实现应用的持续集成与持续部署,Flexus X 实例与 Harbor 私有镜像仓库都能助您一臂之力。

选择 Flexus X 实例与 Harbor 私有镜像仓库的组合,就是选择了云端部署的新高度。点击下方链接,立即开始搭建属于你的企业级私有镜像仓库吧!

产品链接华为云Flexus云服务器X实例直播建站服务器-华为云

wKgZPGd2KnCAG6MUAAMdMY7jqCs164.png

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 云服务器
    +关注

    关注

    0

    文章

    842

    浏览量

    14755
  • 华为云
    +关注

    关注

    3

    文章

    2837

    浏览量

    19390
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    ​RK3576单板机Docker镜像构建与容器运行手册

    本文为创龙科技RK3576 单板机 Docker 开发指南,涵盖 Docker 安装、本地仓库配置、ARM 架构镜像构建、容器拉取与运行管理。支持单 / 多镜像批量构建、本地仓库推送、
    的头像 发表于 05-16 13:50 5424次阅读
    ​RK3576单板机Docker<b class='flag-5'>镜像</b>构建与容器运行手册

    无人管理仓库方案需要哪些硬件设备?

    有哪些?本文结合成熟的RFID技术应用,用通俗易懂的语言,详解一套完整、可落地的无人仓库方案核心硬件,帮你快速理清选型与部署逻辑。无人管理仓库的核心是用智能硬件替代人
    的头像 发表于 05-14 14:54 93次阅读
    无人管理<b class='flag-5'>仓库</b>方案需要哪些硬件设备?

    智能无人仓库管理:企业必看的仓库领用数字化改造案例

    在人力成本攀升、管理效率要求不断提高的当下,智能无人仓库管理已成为企业降本增效的关键方向。本文分享一套成熟的无人值守仓库管理系统落地实践,为企业提供可直接复制的仓库领用数字化改造案例,助力仓储管理
    的头像 发表于 05-11 14:29 118次阅读
    智能无人<b class='flag-5'>仓库</b>管理:企业必看的<b class='flag-5'>仓库</b>领用数字化改造案例

    onsemi FDMC86520DC MOSFET:高效性能与卓越散热的完美结合

    onsemi FDMC86520DC MOSFET:高效性能与卓越散热的完美结合 在电子工程领域,MOSFET(金属 - 氧化物 - 半导体场效应晶体管)是一种至关重要的电子元件,广泛应用于各种电路
    的头像 发表于 04-16 15:15 249次阅读

    EFM32TG微控制器:低功耗与高性能的完美结合

    EFM32TG微控制器:低功耗与高性能的完美结合 在当今的电子设备设计中,低功耗和高性能是两个至关重要的指标。对于电池供电的系统以及对 文件下载: EFM32TG108F32-QFN24.pdf
    的头像 发表于 04-15 15:50 250次阅读

    什么是无人值守仓库?带你了解无人值守仓库管理系统的优势

    在追求降本增效的今天,一种名为“无人值守仓库”的管理模式正日益受到制造、能源、化工等行业的青睐。它颠覆了传统仓库必须“人盯人、人管物”的刻板印象,让仓库也能实现7x24小时不间断的自助化运作。那么
    的头像 发表于 04-01 11:23 304次阅读
    什么是无人值守<b class='flag-5'>仓库</b>?带你了解无人值守<b class='flag-5'>仓库</b>管理系统的优势

    40 Watt医疗电源:高性能与安全的完美结合

    40 Watt医疗电源:高性能与安全的完美结合 在医疗电子设备的设计中,电源的性能和安全性至关重要。今天,我们来详细探讨一款40 Watt医疗电源,它在设计上有诸多亮点,能满足医疗应用的严格要求
    的头像 发表于 03-31 09:10 204次阅读

    使用Dockerfile构建镜像的详细步骤

    Dockerfile写得好不好,直接影响三件事:镜像大小、构建速度、运行安全性。我见过太多团队的Dockerfile是"能跑就行"的水平——基础镜像用ubuntu:latest
    的头像 发表于 02-26 09:43 515次阅读

    MAX4125运算放大器:低功耗与高性能的完美结合

    MAX4122 - MAX4129 系列运算放大器:低功耗与高性能的完美结合 在电子设计领域,运算放大器是不可或缺的基础元件。今天,我们要深入探讨的是 MAXIM 公司的 MAX4122
    的头像 发表于 01-29 10:50 442次阅读

    MAX4126运算放大器:低功耗与高性能的完美结合

    MAX4122 - MAX4129 系列运算放大器:低功耗与高性能的完美结合 在电子设计领域,运算放大器是不可或缺的基础元件。今天,我们要深入探讨的是 MAXIM 公司的 MAX4122
    的头像 发表于 01-29 10:45 363次阅读

    SIP协议和私有协议广播区别

    电子发烧友网站提供《SIP协议和私有协议广播区别.docx》资料免费下载
    发表于 11-06 16:31 2次下载

    蜂鸟E203 SoC的私有设备总线的简单使用

    BIU模块接收IFU和LSU单元的存储器访问请求,判断访问地址区间后,通过ICB接口来访问外部的不同接口,比如系统存储接口和私有外设接口。系统存储接口连接的是SoC中的系统存储总线,可以访问ROM
    发表于 10-30 07:51

    服装仓库里类似手机的扫码PDA盘点机

    讲解类似手机的扫码PDA盘点机如何革新服装仓库管理!N73S手持终端以8核处理器、IP67防护和高效扫码功能,提升盘点效率30%,降低错误率,完美适配服装仓库的快节奏需求。了解它的三防设计、长续航和无缝系统集成,解放你的库存管理
    的头像 发表于 09-01 16:08 1122次阅读
    服装<b class='flag-5'>仓库</b>里类似手机的扫码PDA盘点机

    物联网仓库发货必备设备有哪些?6 类核心设备汇总(附选型建议)

    电商仓库想要发货快又准,离不开专业设备支持。本文从仓库负责人的角度,总结了仓库必备的PDA扫码手持机、热敏打印机、包装设备、拣货小车、WMS系统等核心工具,结合实际应用经验,帮助企业主
    的头像 发表于 08-28 17:04 1245次阅读
    物联网<b class='flag-5'>仓库</b>发货必备设备有哪些?6 类核心设备汇总(附选型建议)

    Helm仓库管理常用配置

    Helm 仓库(Repository)是存储 Helm 图表(Chart)的地方,类似于软件包管理器的仓库(如 apt、yum 仓库)。
    的头像 发表于 06-07 09:27 1606次阅读