Harbor镜像仓库部署

一、简介

Harbor是VMware中国研发团队开发并开源的企业级Docker Registry项目,对中文支持很友好。

Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器。

Harbor具有如下特点:

  • 基于角色的访问控制 - 用户与Docker镜像仓库通过“项目”进行组织管理,一个用户可以对多个镜像仓库在同一命名空间(project)里有不同的权限

  • 镜像复制 - 镜像可以在多个Registry实例中复制(同步)。尤其适合于负载均衡,高可用,混合云和多云的场景

  • 图形化用户界面 - 用户可以通过浏览器来浏览,检索当前Docker镜像仓库,管理项目和命名空间

  • AD/LDAP 支持 - Harbor可以集成企业内部已有的AD/LDAP,用于鉴权认证管理

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

  • 国际化 - 已拥有英文、中文、德文、日文和俄文的本地化版本。更多的语言将会添加进来

  • RESTful API - RESTful API 提供给管理员对于Harbor更多的操控, 使得与其它管理软件集成变得更容易

  • 部署简单 - 提供在线和离线两种安装工具, 也可以安装到vSphere平台(OVA方式)虚拟设备

镜像的存储,Harbor使用的是官方的docker registry(v2命名是distribution)服务去完成。Harbor在docker distribution的基础上增加了一些安全、访问控制、管理的功能以满足企业对于镜像仓库的需求。

Harbor以docker-compose的规范形式组织各个组件,并通过docker-compose工具进行启停。

docker的registry是用本地存储或者s3、Ceph、Swift都是可以的,Harbor的功能是在此之上提供用户权限管理、镜像复制等功能,提高使用的registry的效率。Harbor的镜像拷贝功能是通过docker registry的API去拷贝,这种做法屏蔽了繁琐的底层文件操作、不仅可以利用现有docker registry功能不必重复造轮子,而且可以解决冲突和一致性问题。

二、Harbor获取地址

1.         Harbor中文官网:https://vmware.github.io/harbor/cn/

2.         Github地址:https://github.com/vmware/harbor

3.         Harbor下载地址:https://github.com/vmware/harbor/releases

4.         Harbor二进制离线包镜像站点:http://harbor.orientsoft.cn/

三、Harbor安装前提条件

Hardware
CPU最小双核 建议4核
内存最小4GB 建议8GB
硬盘最小40GB 建议160GB
Software
Python 2.7 or higher  
Docker engine 1.10 or higher  
Docker compose 1.6.0 or higher Python编写的一个工具,通过Docker compose编排部署的harbor
Openssl Latest is preferred  

注:

Harbor的所有服务组件都是在docker中部署的,所以官方安装使用docker-compose快速部署,所以我们需要安装docker、docker-compose

由于Harbor是基于Docker registry V2版本,所以就要求Docker版本不小于1.10.0,docker-compose版本不小于1.6.0

Network ports
443 HTTPS  
4443 HTTS Connections to the Docker Content Trust service for Harbor, only needed when Notary is enabled
80 HTTP Harbor UI and API will accept requests on this port for http protocol

四、Harbor安装前准备

  1. 安装Docker

  2. 安装docker-compose

cd /home/gisyun/soft/harbor;
unzip docker-compose-linux-x86_64.zip;
chmod +x docker-compose        #增加权限
mv docker-compose /usr/bin/            #移动到可执行路径方便使用
docker-compose version             #查看版本信息,校验是否安装成功
软件版本
docker 18.03-CE
docker-compose 1.21.2
Harbor 1.5.1

五、https方式安装Harbor

1.自签TLS证书  https://github.com/vmware/harbor/blob/master/docs/configure_https.md(跟该官方配置走)

(1)解压harbor包,在解压的包内创建一个ssl目录来存放一会儿创建的证书;进入ssl目录执行以下操作。

(2) Create your own CA certificate: In a test or development environment, you may choose to use a self-signed certificate instead of the one from a CA. The below commands generate

Harbor是一个开放源代码容器镜像注册表,可通过基于角色权限的访问控制来管理镜像,还能扫描镜像中的漏洞并将映像签名为受信任,作为CNCF孵化项目,可提供合规性、性能和互操作性,以帮助跨Kubernetes和Docker等云原生计算平台持续、安全地管理镜像 [^2]。在Kubernetes集群中部署2.1.2版本的Harbor镜像仓库,可参考以下通用步骤: ### 准备工作 - 确保Kubernetes集群正常运行,节点资源满足Harbor运行要求。 - 准备好Harbor安装文件,可从官方渠道下载2.1.2版本。 - 配置好相关的网络和存储,例如准备好持久化存储用于Harbor的数据存储。 ### 部署步骤 1. **获取Harbor安装文件**:从Harbor官方网站或镜像源下载2.1.2版本的安装包。 2. **修改配置文件**:解压安装包后,编辑`harbor.yml`配置文件,配置相关参数,如`hostname`、`https`(如果需要)、存储配置等。 3. **执行预备脚本**:在安装包目录下执行预备脚本,对配置进行检查和预处理。 4. **执行安装脚本**:运行安装脚本开始安装Harbor到Kubernetes集群中。 5. **验证运行情况**:通过Kubernetes的命令(如`kubectl get pods`)查看Harbor相关Pod的运行状态,确保都正常运行。 6. **访问Harbor UI界面**:通过配置的`hostname`和端口访问Harbor的Web界面,验证部署是否成功。 ### 注意事项 - 确保Kubernetes集群的网络策略允许Harbor相关组件之间的通信。 - 配置持久化存储时,要根据实际情况选择合适的存储类型和大小。 - 如果使用HTTPS,需要准备好有效的SSL证书。 ### 示例命令 创建`docker-registry`类型的Secret用于访问Harbor仓库: ```bash kubectl create secret docker-registry harbor-secret --docker-server=your-harbor-server --docker-username=admin --docker-password=your-password ``` 这里的`your-harbor-server`和`your-password`需要替换为实际的Harbor服务器地址和密码 [^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LuckyJiang.2021

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值