基础环境:
1、harbor依赖docker,首先安装docker
2、还需要安装docker-compose
3、进入解压目录将harbor.yml.tpl 复制为harbor.yml 并修改配置
4、./prepare
./install.sh
docker-compose ps 查看组件状态
5、如果需要开启自带的扫描插件
docker-compose stop
./prepare --with-clair
docker-compose -f docker-compose.yml up -d 指定docker-compose文件从新启动
harbor数据:
Harbor 所依赖的数据可分为两大类:临时数据和持久化数据。
1、临时数据
Harbor 组件所依赖的配置文件和环境变量。这些数据通常在 Harbor 安装目录的 common 目录下
2、持久数据
data目录包含的文件夹和相应的作用如下:
ca_download:存放用户访问Harbor时所需的CA。
cert:Harbor启动HTTPS服务时所需的证书和密钥。
chart_storage:存放Helm v2版本的Chart数据。
database:存放数据库的目录,Harbor、Clair和Notary数据库的数据都在此目录下。
job_logs:存放JobService的日志信息。
redis:存放Redis数据。
registry:存放OCI Artifacts数据(对于大部分用户来说是镜像数据)。
secret:存放Harbor内部组件通信所需的加密信息。
trivy-adapter:存放Trivy运行时相关的数据。
k8s部署harbor
工具helm
如果使用nfs作为默认的storageclass 在1.20版本后默认nfs-client-provisioner feature-gates: RemoveSelfLink=false不生效了 可以部署nfs-subdir-external-provisioner 控制器
helm install nfs-subdir-external-provisioner nfs-subdir-external-provisioner/nfs-subdir-external-provisioner --set nfs.server=cfs-IRhnZtkdwf.lb-。。。。 --set nfs.path=/ -n public-service
helm search repo harbor -l 查看相应的版本
helm pull harbor/harbor --version=1.11.0 下载对应的版本
然后编辑harbor/value.yaml
如果使用storageclass 则在persistence下每个storageclass填写默认存储类
helm install harbor harbor/harbor --version 1.11.0 -f harbor/values.yaml -n public-service