当前位置:网站首页>【1】Harbor在线安装:3分钟体验Harbor
【1】Harbor在线安装:3分钟体验Harbor
2022-07-19 22:18:00 【成了书中人】
作者| 李大白
Harbor简介
Harbor
是个开源云原生制品(artifact)仓库,是首个原创于中国、并且成为CNCF
第11个毕业级的开源项目。用户可通过策略和基于角色的访问控制来保护制品(如容器镜像、Helm Chart 等),扫描镜像并避免受安全漏洞的危害。
Harbor 扩展了开源项目Docker Distribution
,添加了用户所需的功能(例如安全性,身份,漏洞扫描和管理)。
在环境中部署 Harbor 可以提高镜像传输效率,便于就近构建和运行容器应用。Harbor
支持在制品仓库之间复制镜像、Chart 等制品,并提供高级安全功能,例如用户管理、访问控制和操作审计等。
\
Harbor几种安装方式
Harbor提供以下几种安装方式,以适应不同的安装环境。
在线安装:适合初学者快速搭建一个Harbor仓库,简单快速,安装过程需要从官方拉取镜像,资源包带
online
。离线安装:适合公司内网环境,离线安装包装载了安装过程需要的镜像(自动导入),资源包带
offline
。源码安装:适合开发者对Harbor进行开发和测试,通过编译源码到本地进行安装,安装条件较苛刻,需要了解Harbor底层原理和实现方式的,可选择源码安装的方式
Heml Chart:通过
Heml
安装Harbor到kubernetes集群;Operater安装:
Harbor Operator
提供了可深度定制的能力,用户通过配置顶级CRD HarborCluster
,根据实际需要定义和配置自己的 Harbor 组件。
每种安装方式都可以实现Habor的高可用(高可用方案官方建议使用kubernetes的安装方式,其他方式官方并不维护),防止单点故障。
基于离线安装方式的高可用方案见公众号《Harbor进阶实在》的另外一篇文章!
部署环境
操作系统:CentOS 7.5 VMWare Workstation 16 Harbor版本: v2.3.5 主机IP:192.168.2.190 主机配置:2CPU、4G内存
Harbor主机初始化
Harbor部署需要主机有一定的环境,主要有以下几个点对主机进行初始化操作。
4.1 安装docker-ce
Harbor不论是以哪一种方式安装,每个组件都是以容器的方式运行的,所以需要安装docker-ce来启动容器。 本处安装的是Harbor v2.3.5,对应的docker版本是17.06.0-ce+都可以,本处安装
""\
4.2 安装docker-compose
docker-compose的版本在1.18.0+
$ mv docker-compose-linux-x86_64 /usr/local/bin/docker-compose
$ chmod +x /usr/local/bin/docker-compose
$ docker-compose -v
docker-compose version 1.29.2, build 5becea4c
4.3 配置内核参数
$ modprobe br_netfilter //加载内核模块(临时)
$ cat > /etc/sysctl.conf << EOF
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
$ sysctl -p
net.ipv4.ip_forward=1
:开启路由转发
不配置该参数,当主机重启后,服务状态正常,却无法访问到服务器。
五、Harbor部署
5.1 下载并解压安装包
从官方Github项目地址下载离线安装包\
$ wget https://github.com/goharbor/harbor/releases/download/v2.3.5/harbor-online-installer-v2.3.5.tgz
$ tar zxvf harbor-online-installer-v2.3.5.tgz
$ cd harbor
5.2 创建并修改配置文件
根据配置文件模板复制为配置文件\
$ cp harbor.yml.tmpl harbor.yml
修改配置文件
$ vim harbor.yml
hostname: 192.168.2.190 #主机名称或者IP地址
#https: #不使用https安全加密端口
# port: 443
# certificate: /your/certificate/path
# private_key: /your/private/key/path
5.3 生成各个组件的配置
$ ./prepare
该过程会下载基础镜像,然后在当前common/config/
下生成各个组件的配置文件。

5.4 安装Harbor
$ ./install.sh --with-trivy --with-chartmuseum
--with-trivy
:启用Trivy镜像漏洞扫描插件;--with-chartmuseum
:启用Helm Chart组件;--with-notary
: 如果启用安全加密端口https可添加该参数(本处不添加);
安装过程会拉取镜像,需要等段时间!
安装完成后出现以下信息则表示安装成功:
? ----Harbor has been installed and started successfully.----

5.5 查看Harbor服务状态
$ docker-compose ps
ps:
STATUS
列状态为Running则表示对应的组件服务正常!
登录Harbor UI界面
在浏览器输入地址:http://192.168.2.190:80
用户名:admin
密码:Harbor12345
推荐阅读
基于离线安装方式的高可用方案设计与部署 Prometheus监控Harbor Loki实现Harbor的批量日志管理
本文由 mdnice 多平台发布
边栏推荐
猜你喜欢
随机推荐
Emergency response > > basic skills and tools
苹果等大厂Hold不住了!裁员和放缓招聘,「双管齐下」出方案
趣店预制菜品牌战略发布会
RPC如何实现超时重试
程序员成长第二十二篇:如何带团队?
How to improve network security emergency response and incident handling capabilities
高数 | 【多元函数微分学 计算篇】链式求导法、隐函数求导法、全微分形式不变性、多元函数求极值
MySQL
DNS解析实验
Interview high concurrency, cool (full energy, collect quickly)
Kubernetes网络插件详解- Flannel篇
Widar3.0 replication log (dfsextractioncode)
Emergency response > > types and disposal methods of network security emergency events
Typescript正则表达式使用
Live broadcast at 19:00 tomorrow evening | in depth analysis: object storage in the data Lake
Super easy to use screenshot software snipaste (including installation package), how to set snipaste to start automatically
应急响应 >> 网络安全应急事件类型和处置办法
你真的理解持续集成(CI)吗?
监听无服务异常处理
MySQL constraint and aggregate query