Harbor备忘录

Harbor备忘录

1…概述

VMware 公司设计的 Registry server 开源项目,包括了权限管理 (RBAC)、LDAP、审计、管理界面、自我注册、HA 等企业必需的功能,同时设计镜像复制和中文支持等功能。

一个企业级私有 Registry 服务器,Harbor 提供了更好的性能和安全。提升用户使用 Registry 构建和运行环境传输镜像的效率。

我们通常使用Harbor来管理docker镜像,公司内部自己构建的镜像都会上传到harbor,帮客户搭建服务时可以直接从公司的harbor上拉取镜像。

2.安装

安装方式基于docker和docker-compose的环境的,前提需要具备docker和docker-compose的环境

推荐版本:

docker:23.0.1
docker-compsoe:1.29.2, build 5becea4c

2.1.离线下载

采用offline安装方式,从https://github.com/goharbor/harbor/releases/tag/v2.8.0 下载,下载后的文件是 harbor.v2.8.0.tar.gz

2.2.SSL证书

Harbor支持http和https两种方式,默认两者都开启。

Https方式需要自行配置SSL证书,详情参照如下所示

# Create certificates:

wget http://files.freeswitch.org/downloads/ssl.ca-0.1.tar.gz
tar zxfv ssl.ca-0.1.tar.gz
cd ssl.ca-0.1/
perl -i -pe 's/md5/sha256/g' *.sh
perl -i -pe 's/1024/4096/g' *.sh
./new-root-ca.sh
./new-server-cert.sh registry.docker.org
./sign-server-cert.sh registry.docker.org

2.3.Harbor配置文件修改

解压文件harbor.v2.8.0.tar.gz,进入目录harbor,修改harbor配置文件

tar -xzvf harbor.v2.8.0.tar.gz
cd harbor
cp harbor.yml.tmpl harbor.yml
vi harbor.yml

主要修改以下内容:

  • hostname 这个是域名,需要修改成大家公司自己的域名,如果是自己测试,可以随便填个域名,然后在/etc/hosts中解析域名到127.0.0.1就好,在这里我们输入registry.docker.org
  • http.port 这个是端口,默认是80,一般不改,除非80端口被占用了
  • https 这个是https配置,需要提供SSL证书,如果是自己生成的证书,需要在docker配置文件中设置insecure–registries,否则docker会认为这是不安全的域名,下文会说,等会自己生成一个证书再回来修改
  • harbor_admin_password 这是harbor提供的管理后台的管理员密码
  • database 这个节点下面的配置是harbor自己依赖的数据库密码以及连接参数
  • data_volume 这是harbor数据存储的目录,不用修改,之后可以在docker-compose.yml中挂载宿主机目录,只要记住这个目录就好

具体修改示例如下:

hostname: registry.docker.org

https:
  # https port for harbor, default is 443
  port: 443
  # The path of cert and key files for nginx
  certificate: /root/ssl/ssl.ca-0.1/registry.docker.org.crt
  private_key: /root/ssl/ssl.ca-0.1/registry.docker.org.key
  
harbor_admin_password: Admin100%  

2.4.安装

切换到harbor文件夹下,运行两个文件prepare和install.sh

配置文件有修改,运行

./prepare

启动

./install.sh

关闭

docker-compose down

3.客户端配置

在/etc/docker目录下增加daemon.json文件

内容如下,这里用192.168.90.31示例,https默认端口443,http默认端口是80,如果有变动,需要加上自定义的端口:

{
  "insecure-registries": [
    "https://registry.docker.org",
    "http://192.168.90.31"
  ],
  "registry-mirrors": [
    "https://registry.docker-cn.com"
  ]
}

配置完成后
systemctl daemon-reload && systemctl restart docker

4.UI访问

浏览器登录:https://192.168.90.31/ 或者 https://registry.docker.org

自签证书,浏览器不信任,需要添加信任并继续

登录用户名:admin
登录密码:Admin100%

5.命令示例

5.1.docker命令示例

登录(用户名:admin,密码:Admin100%)

docker login registry.docker.org

拉取

docker pull registry.docker.org/avcs/REPOSITORY[:TAG]

推送

docker push registry.docker.org/avcs/REPOSITORY[:TAG]

标记

docker tag SOURCE_IMAGE[:TAG] registry.docker.org/avcs/REPOSITORY[:TAG]

5.2.Helm命令示例

打包

helm package CHART_PATH

推送

helm push CHART_PACKAGE oci://registry.docker.org/avcs

5.3.CNAB命令示例

推送

cnab-to-oci push CNAB_PATH --target registry.docker.org/avcs/REPOSITORY[:TAG] --auto-update-bundle
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

彼岸花@开

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

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

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

打赏作者

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

抵扣说明:

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

余额充值