Harbor最新进展,将由CNCF管理

Harbor(https://goharbor.io)是一个企业级的容器镜像仓库管理系统,用于为企业级用户创建私有的容器镜像库,一方面能够对内部安装的网络传输加速,另外一方面提供本身特有的版本更好地保证可用性和安全性。Harbor原来由VMWare China开发,所有开源。git

一、Harbor的重要变化

Harbor最近发布了1.6版本,将会带来一些很是重要的变化。github

该版本开始支持Helm Chart的管理,不过这个用Github原本就能够作的很好,只不过这里采用了图形界面,仍是很是方便普通的使用者,尤为是中小企业的准专业人员。redis

Har将来将会移交到CNCF管理,成为云原生基础设施的一部分。目前已经接收CNCF的一些赞助资源,而且项目架构和代码都已经开始了调整。这将是云原生社区的一个重大利好,补充了云原生架构中除了Kubernetes容器编排管理外的重要部分。docker

二、Kubernetes中部署Harbor

在Harbor 1.6版本中,Helm Chart项目已经改变,移到了 https://github.com/goharbor/harbor-helm 子项目中。目前,开发调整还比较频繁,可能出现使用上的问题,须要关注项目发展、及时更新代码。出现的问题能够去提交issue,帮助项目完善。api

  • 预先拉取容器镜像:
# 界面服务 
docker pull goharbor/harbor-ui:dev 
docker pull goharbor/harbor-adminserver:dev
docker pull goharbor/harbor-portal:dev
docker pull goharbor/harbor-jobservice:dev

# 受权管理
docker pull goharbor/clair-photon:dev 
docker pull goharbor/notary-server-photon:dev
docker pull goharbor/notary-signer-photon:dev

# 镜像服务 
docker pull goharbor/registry-photon:dev 
docker pull goharbor/harbor-registryctl:dev
docker pull goharbor/chartmuseum-photon:dev

# 镜像存储
docker pull goharbor/harbor-db:dev 
docker pull docker.io/bitnami/redis:4.0.9
  • 部署步骤以下:
# 复制部署代码。
git clone https://github.com/goharbor/harbor-helm

# 选择版本。
cd harbor-helm
git checkout master

# 能够进去修改values.yaml文件里面的参数。
# 参数参考:https://github.com/goharbor/harbor-helm

helm dependency update

# 安装到harbor命名空间下面。
helm install --namespace harbor --name harbor .

# !若是错误或者是不须要了,进行删除。
# helm delete --purge harbor

原来的一些部署方法可能再也不适用,仅供参考:浏览器

Harbor 1.6 已经支持helm 私服仓库了,仍是比较方便的。安全

我采用上面的方法部署,遇到一些小坑。服务器

  • 采用Rook部署,后来StorageClass rook-ceph-block建立pvc能够成功,可是挂载时失败。这个多是Ceph的缘由。
  • 采用NFS部署,所有成功(修改chart/chartmuseum里的local"为local后)。可是,登录时页面显示有错误。使用admin/Harbor12345登录反馈无效的用户名和密码。注册新用户没法激活确认按钮。
  • 估计这些都是项目调整中的问题,等过段时间将会迎来一个全新的Harbor,目前保持耐心。

三、常规的直接部署

若是上面的方法部署不成功,又着急使用的话,Harbor也支持常规部署,已经有了长时间的考验。网络

该方式将Harbor安装在Docker环境下,不使用Kubernetes进行管理。架构

A、安装

  • 下载在线安装包。
https_proxy=192.168.199.99:9999 wget https://storage.googleapis.com/harbor-releases/release-1.6.0/harbor-online-installer-v1.6.0.tgz
  • 配置harbor部署参数。

harbor.cfg 文件

  • 生成docker-compose file。
sudo ./install.sh   --with-clair --with-chartmuseum

B、使用

  • 登录
    • 使用浏览器打开相应的IP地址。
    • 默认密码 admin/Harbor12345。
相关文章
相关标签/搜索