使用docker-composeOrHelm离线部署harbor仓库

先决条件
docker: docker version: 20.10.18
docker-compose: Docker Compose version v2.20.2
安装docker-compose
sudo curl -L “https://github.com/docker/compose/releases/latest/download/docker-compose- ( u n a m e − s ) − (uname -s)- (unames)(uname -m)” -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version

------------------------------------------------docker-compose部署--------------------------------------------------------------
在git上下载离线安装包
https://github.com/goharbor/harbor/releases/tag/v2.7.0
harbor-offline-installer-v2.7.0.tgz
解压离线安装包:
tar -zxvf harbor-offline-installer-v2.7.0.tgz
sudo ./install.sh
如果安装成功,您可以打开浏览器以访问位于 的 Harbor 界面,更改为您在 中配置的主机名。如果未在 中更改它们,则默认管理员用户名和密码为 和 。
http://reg.yourdomain.com
admin Harbor12345
登录到管理门户并创建新项目,例如 .然后,您可以使用 Docker 命令登录到 Harbor,标记映像并将其推送到 Harbor。myproject
docker login reg.yourdomain.com
docker push reg.yourdomain.com/myproject/myrepo:mytag
重要:如果您的 Harbor 安装使用 HTTP 而不是 HTTPS,则必须将该选项添加到客户端的 Docker 守护程序中。缺省情况下,守护程序文件位于 。–insecure-registry/etc/docker/daemon.json
例如,将以下内容添加到您的文件中:daemon.json
{
“insecure-registries” : [“myregistrydomain.com:5000”, “0.0.0.0”]
}
更新后,您必须重新启动 Docker 引擎和 Harbor。daemon.json
重新启动 Docker 引擎。
systemctl restart docker
停止港口。
docker-compose down -v
重新启动港口。
docker-compose up -d

----------------------------------------------------helm部署----------------------------------------------------------
先决条件
镜像 (存在于离线部署包harbor-offline-installer-v2.7.0.tgz中镜像包 docker load -i harbor.v2.7.0.tar.gz)
goharbor/harbor-exporter v2.7.0 69796d5ea472 7 months ago 96.5MB
goharbor/chartmuseum-photon v2.7.0 3a1128c43ada 7 months ago 227MB
goharbor/redis-photon v2.7.0 cc91f43eb370 7 months ago 154MB
goharbor/trivy-adapter-photon v2.7.0 acf7683e6266 7 months ago 431MB
goharbor/notary-server-photon v2.7.0 cc32c079c5e8 7 months ago 113MB
goharbor/notary-signer-photon v2.7.0 1c7e9e9a0c92 7 months ago 110MB
goharbor/harbor-registryctl v2.7.0 6573a396157f 7 months ago 139MB
goharbor/registry-photon v2.7.0 4d015df21516 7 months ago 78.1MB
goharbor/nginx-photon v2.7.0 5f2878db2a82 7 months ago 154MB
goharbor/harbor-log v2.7.0 6b4a9a2855bb 7 months ago 161MB
goharbor/harbor-jobservice v2.7.0 cdde5030ac74 7 months ago 252MB
goharbor/harbor-core v2.7.0 f1aaf647100d 7 months ago 215MB
goharbor/harbor-portal v2.7.0 ea51148e87b6 7 months ago 162MB
goharbor/harbor-db v2.7.0 fff87d4d50e4 7 months ago 195MB
goharbor/prepare v2.7.0 f0f57240ce77 7 months ago 164MB

harbor-helm-1.11.0.zip (chart包-https://link.zhihu.com/?target=https%3A//codeload.github.com/goharbor/harbor-helm/zip/refs/tags/v1.11.0
解压到/opt/harbor
进入/opt/harbor/harbor-helm-1.11.0修改配置
vim value.yaml

expose:
  # Set how to expose the service. Set the type as "ingress", "clusterIP", "nodePort" or "loadBalancer"
  # and fill the information in the corresponding section
  type: nodePort    #模式
  tls:
    enabled: false    # 关闭tls安全加密认证(如果开启需要配置证书)
	
externalURL: http://xxx.xx.x.xx:30002    # 使用nodePort且关闭tls认证,则此处需要修改为http协议和expose.nodePort.ports.http.nodePort指定的端口号,IP即为kubernetes的节点IP地址

trivy:
  skipUpdate: true    #设置为 true 禁用从 GitHub 下载 Trivy 数据库的功能。
  offlineScan: true    #设置为 true 启用离线扫描模式,避免发送 API 请求以识别依赖关系。

安装
helm install harbor -f values.yaml . --namespace harbor
查看pods状态 harbor命名空间下
kubectl get pods -n harbor
kubectl get pods -n harbor -o wide
NAME READY STATUS RESTARTS AGE
harbor-chartmuseum-989b8b97d-wjg55 1/1 Running 0 15m
harbor-core-7b6cd7c968-xnqt5 1/1 Running 0 15m
harbor-database-0 1/1 Running 0 15m
harbor-jobservice-75b774cb84-dwrls 1/1 Running 3 (14m ago) 15m
harbor-nginx-fc68874d5-6cmkl 1/1 Running 0 15m
harbor-notary-server-65776b8c-wn6z2 1/1 Running 0 15m
harbor-notary-signer-7c8586cff7-f9gw7 1/1 Running 0 15m
harbor-portal-b7d5d9558-tj7s4 1/1 Running 0 15m
harbor-redis-0 1/1 Running 0 15m
harbor-registry-56cdbd54b5-g52sx 2/2 Running 0 15m
harbor-trivy-0 1/1 Running 0 15m
浏览器访问(当前部署的服务器)
xx.xxx.x.xx:30002
卸载
helm uninstall harbor --namespace harbor

自签证书(https://blog.51cto.com/wutengfei/5497399
关于自签证书生成
说明:可以使用自动生成的证书不需要修改,如果后面需要更换证书,可直接将要更换的secret资源删除,然后再新创建即可,注意secret名字保持一致。
删除
$ kubectl delete secret tls-harbor -n harbor
创建并添加 在安装之前执行
$ kubectl create secret tls tls-harbor --cert=tls.crt --key=tls.key -n harbor

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值