Docker私有化仓库Harbor安装流程

1.搭建Docker私有仓库主要有以下几种方式

  1. 使用Docker官方提供的Registry镜像:Docker官方提供了一个用于构建私有镜像仓库的Registry镜像,只需将镜像下载并运行容器,然后暴露5000端口即可使用。可以通过修改Docker的配置文件daemon.json,在其中添加私有镜像仓库地址来实现。

  2. 在Docker官方网站中直接创建:在Docker的官方网站(https://hub.docker.com/)中,可以创建属于自己的账户,然后在Repository中创建自己的仓库。这种方式比较简单,但需要网络连接,且对于大规模使用可能存在一些限制。

  3. 使用第三方工具Harbor:Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,提供了丰富的功能,如用户管理、镜像复制、访问控制等。此外,它还提供了图形化界面,方便用户进行操作和管理。使用Harbor需要下载并安装,同时需要Docker Compose的支持。

  4. 自行搭建本地仓库:除了使用官方或第三方的工具外,还可以自行搭建本地仓库。这种方式需要一定的技术能力和资源投入,但可以根据实际需求进行定制和优化。自行搭建本地仓库时,可以考虑使用开源的镜像仓库软件,如Nexus Repository等。

经过审查和方便使用,决定使用第三方工具Harbor

2. Harbor 简介

2.1.什么是Harbor

Harbor 是 VMware 公司开源的企业级 Docker Registry 项目,其目标是帮助用户迅速搭建一个企业级的 Docker Registry 服务

Harbor以 Docker 公司开源的 Registry 为基础,提供了图形管理 UI 、基于角色的访问控制(Role Based AccessControl) 、AD/LDAP 集成、以及审计日志(Auditlogging) 等企业用户需求的功能,同时还原生支持中文。

   LDAP(Lightweight Directory Access Protocol)轻量级DAP协议

AD(Active Direcctory)是LDAP的实现。不仅实现了LDAP协议,还实现了具体应用(windows 域控)

公司内的各种人员账户,电脑打印机等设备管理是AD最常见的应用。可以将人员和设备加在活动目录里,对资源进行统一的管理。可以把公司分为多个域,每个域存储不同的信息,存储公司里各个资源的信息。

存储用户名密码

对外提供LDAP协议的身份认证——LDAP BIND

跟各种应用系统的统一集成

Harbor 的每个组件都是以 Docker 容器的形式构建的,使用 docker-compose 来对它进行部署。

用于部署 Harbor 的 docker-compose 模板位于 harbor/docker-compose.yml

2.2.Harbor的特性
  1. 基于角色控制:用户和仓库都是基于项目进行组织的,而用户在项目中可以拥有不同的权限。

  2. 基于镜像的复制策略:镜像可以在多个Harbor实例之间进行复制(同步)。

  3. 支持 LDAP/AD:Harbor 可以集成企业内部已有的 AD/LDAP(类似数据库的一张表),用于对已经存在的用户认证和管理。

  4. 镜像删除和垃圾回收:镜像可以被删除,也可以回收镜像占用的空间。

  5. 图形化用户界面:用户可以通过浏览器来浏览,搜索镜像仓库以及对项目进行管理。

  6. 审计管理:所有针对镜 像仓库的操作都可以被记录追溯,用于审计管理。

  7. 支持 RESTful API:RESTful API 提供给管理员对于 Harbor 更多的操控, 使得与其它管理软件集成变得更容易。

  8. Harbor和docker registry的关系:Harbor实质上是对docker registry做了封装,扩展了自己的业务模板。

2.3.组件架构图

Harbor在物理机上部署是非常难的,而为了简化Harbor的应用,Harbor官方直接把Harbor做成了在容器中运行的应用,而且这个容器在Harbor中依赖类似redis、mysqlpgsql等很多存储系统,所以它需要编排很多容器协同起来工作,因此VMWare Harbor在部署和使用时,需要借助于Docker的单机编排工具(Docker compose)来实现

3.部署Harbor

3.1. 从github上获取要安装的Harbor版本

Releases · goharbor/harbor · GitHub

也可以直接用wget工具拉取

wget https://storage.googleapis.com/harbor-releases/release-1.7.0/harbor-offline-installer-v2.3.4.tgz

这是我已经下载好的Harbor二进制安装包,将包下载好了之后放到指定的目录下面

https://vws2gbhl02j.feishu.cn/wiki/XAUWwvTMiiX6zXk8rmIcS3RSnsh#FX3Gd3HpZoU4HQx5iRKcyZnsnze

tar -xzvf harbor-offline-installer-v2.3.4.tg -C /develop
3.2.修改harbor的配置文件
vim harbor.yml

将配置文件中的hostname配置成自己服务器的IP,以及需要暴露的端口然后设置仓库的初始登录密码,默认管理员用户是admin

这里是设置默认的数据卷存储位置

harbor仓库的默认访问方式是https,但是犹豫我们没有给Harbor仓库配置https证书,所以我们需要将文件中https的配置一栏注释

设置完成之后wq保存退出即可

3.3.配置docker默认访问方式为http模式

因为我们的harbor已经被我们设置成http模式 ,所以为了我们的docker能够和harbor仓库交互,我们需要将docker也设置成

打开/etc/docker/daemon.json添加如下配置

vim /etc/docker/daemon.json

{
        "insecure-registries": ["0.0.0.0/0"]
}
#保存退出
#重启docker+
systemctl daemon-reload
systemctl restart docker

然后我们回到harbor仓库的目录下面执行脚本

./install.sh

因为harbor的tar包里已经自带docker-compose文件 所以 我们直接查看就行

docker compose ps -a

就能够看见我们的harbor容器已经启动

4.访问Harbor仓库web页面

这个时候我们访问刚才设置的IP端口就行

192.168.5.180.8066

到这里harbor仓库就已经搭建完成。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/722752.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

具备人工智能标记的书签应用Hoarder

什么是 Hoarder ? Hoarder 是一款可自托管的书签应用程序(链接、笔记和图像),具有基于人工智能的自动标记和全文搜索功能。适合数据囤积者使用。 软件特点: 🔗 为链接添加书签、做简单的笔记并存储图像。⬇…

简单介绍vim

文章目录 前言一、Vim的特点二、安装Vim三、设置Vim配置文件的位置:编辑配置文件:添加配置选项:保存并退出编辑器:快速配置验证设置: 总结 前言 Vim是一款强大的文本编辑器,被广泛用于各种编程和文本编辑任…

大咖专栏 | AI 时代下,我们可以拥有怎样的数据库?

Hi,各位朋友们,我是 KaiwuDB 高级架构师赵衎衎。 KaiwuDB 始于万物互联时代下千万条数据洪流中,我们持续打磨构造了更加灵活兼容的分布式多模架构,实现了海量异构数据高性能、低成本的集中管理… …这些底层特性都在为后续提供更…

年轻人膳食营养补充剂小程序,营养看得见

随着经济与科技的不断发展,人们对于大众健康、全民养生的意识也在不断增强。越来越多的年轻人加入进来,逐渐成为保健品行业的主力军,传统的保健品行业抓住这一波时代潮流,也采取了新的变革。 一. 膳食营养补充剂的定义…

nodejs爬取小红书图片

昨天的文章已经描述了可以抓取评论区内容, 抓取图片内容和抓取评论区的内容基本一致 我们可以看到接口信息中含有图片链接,我们要做的就是爬取图片链接然后下载 这边要用到的模块为const downloadrequire(download) 将爬到的图片链接存放到images数组…

OpenAI新模型发布,免费开放GPT-4o!但只开放一点点...

GPT-4o 中的“o”代表“omni”——指的是 GPT-4o 的多模态。 该模型将向免费客户开放,这意味着任何人都可以通过 ChatGPT 访问 OpenAI 最先进的技术。 GPT-4o 是 OpenAI 昨天晚上发布的新旗舰模型,可以实时推理音频、视觉和文本。 据官方介绍&#xff0…

LCL滤波器并网逆变器双闭环控制系统仿真

并网逆变器通常采用L滤波器,虽然结构和控制简单,但是随着功率级别的增加,体积重量增大等问题也日益突出。为了解决这个问题,人们开始使用LCL滤波器,这种滤波器在功率较大的场合表现出色。 无源滤波器,又称…

人工智能在音乐创作中的崛起与未来展望

目录 前言1. 国内外音乐大模型现状1.1 国内音乐大模型概览1.2 国外音乐大模型概览1.3 市场份额与竞争格局 2. 音乐大模型的商业模式2.1 订阅制服务2.2 定制化服务2.3 授权与版权合作 3. 人工智能与音乐人的合作模式3.1 AI辅助创作3.2 共同创作平台3.3 AI乐器与音乐人表演 4. AI…

香港电讯高可用网络助力企业变革金融计算

客户背景 客户是一家金融行业知名的量化私募对冲基金公司,专注于股票、期权、期货、债券等主要投资市场,在量化私募管理深耕多年,目前资管规模已达数百亿级,在国内多个城市均设有办公地点。 客户需求 由于客户业务倚重量化技术…

LabVIEW Windows与RT系统的比较与选择

LabVIEW是一种系统设计和开发环境,广泛应用于各类工程和科学应用中。LabVIEW Windows和LabVIEW RT(Real-Time)是LabVIEW的两个主要版本,分别适用于不同的应用场景。以下从多个角度详细分析两者的区别,并提供选择建议。…

Mendix 创客访谈录|医疗设备领域的数字化转型利器

本期创客 尚衍亮 爱德亚(北京)医疗科技有限公司 应用开发和数字化事业部开发经理 大家好,我叫尚衍亮。毕业于软件工程专业,有6年的软件开发经验。从2021年开始,我在爱德亚(北京)医疗科技有限公司…

Python+Selenium之断言

一、Assert 用于判断一个表达式,在表达式条件为 false 的时候触发异常。 #获取对应元素的文本值text02driver.find_element_by_xpath("//h1[text()用户登录]").text#判断text02是否包含“用户登录”字符串,包含即成功,不包含即失败…

从零开始认识思科,并学会认识思科1.认识思科

hello大家好,我是风屿,今天我将从零开始带领大家认识思科设备中的各种技术以及配置,方便以后配置思科的设备,以及考取相应的证书。 在当今的数字化时代,网络扮演着至关重要的角色。而在网络技术领域,思科无…

互联网时代的语义网知识表示框架---RDF和RDFS

文章目录 RDF和RDFSRDF简介RDF和RDFS 随着语义网的提出,知识表示迎来了新的契机和挑战,契机在于语义网为知识表示提供了一个很好的应用场景,挑战在于面向语义网的知识表示需要提供一套标准语言可以用来描述Web的各种信息。早期Web的标准语言HTML和XML无法适应语义网对知识表…

MySQL数据库管理 二

1、数据表高级操作 (1)克隆表 方法一: create table 新表名 like 旧表名; #克隆表结构 insert into 新表名 select * from 旧表名; #克隆表数据 #此方法能保证 新表的表结构、表数据 跟旧表都是一致的 方法二&#x…

Python 数据可视化 多色散点图

Python 数据可视化 多色散点图 fig, ax plt.subplots() max_line max([max(merged_df[unif_ref_value]), max(merged_df[unif_rust_value])]) min_line min([max(merged_df[unif_ref_value]), max(merged_df[unif_rust_value])]) ax.plot([min_line, max_line], [min_line, …

【C语言】二维数组(详解)

目录 1. 二维数组的创建 1.1 二维数组的概念 1.2 二维数组的创建 2. 二维数组的初始化 2.1 不完全初始化 2.2 完全初始化 2.3 按照行初始化 2.4 初始化时能省略行,但不能省略列 3. 二维数组的使用 3.1 二维数组下标 3.2 二维数组…

【2024】kafka streams结合案例分析进行实际项目开发使用(3)

💻目录 一、前沿介绍二、代码实现1、依赖2、实体类2.1、Transaction2.2、 TransactionKey2.3、TransactionPattern2.4、CustomerReward 3、序列化工具类3.1、序列化3.2、反序列化3.3、Serde仓库 4、具体streams实现5、其他测试使用5.1、生产者5.2、日志文件 6、创建…

背景渐变动画登录页

b站视频演示效果: 效果图: 完整代码: <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>背景…

MySQL全解(基础)-(MySQL的安装与配置,数据库基础操作(CRUD,聚合,约束,联合查询),索引,事务)

MySQL安装与配置 1.数据库介绍 存储数据用文件就可以了&#xff0c;为什么还要弄个数据库? 文件保存数据有以下几个缺点&#xff1a; 文件的安全性问题 文件不利于数据查询和管理 文件不利于存储海量数据 文件在程序中控制不方便数据库存储介质&#xff1a; 磁盘 内存 为了…