1. 安装部署
1.1 下载安装包
直接去github
地址,找releases
下载最新的offline
包https://github.com/goharbor/harbor
解压安装包:
tar -xvf harbor-offline-installer-v1.7.1.tgz
1.2 修改配置文件
1.修改harbor.cfg
:
- 修改hostname:
- 修改
secretkey_path
,改为当前目录:
2.修改docker-compose.yml
文件
- 修改所有的volumes配置,把所有的文件都挂载到当前目录下
- 修改端口80:80,改为8080:80
1.3 安装
./install.s
安装成功后显示如下:
1.4 访问
1.配置host
192.168.28.138 hub.zlt.com
2.通过域名访问
默认用户名/密码: admin/Harbor12345
如果密码不对,请查看harbor.cfg
的harbor_admin_password
配置
2. 使用介绍
Harbor
是一个企业级开源镜像仓库,也是首个加入 CNCF
且原创于中国的项目,时间于2018年8月。在2014年由VMware
中国研发中心内部立项和使用,并于2016年对社区开源。Harbor
项目扎根、成长和壮大于中国社区,在 CNCF
中是唯一原生支持中文的项目,深受中国用户推崇和喜爱。
Harbor
是一个用于存储和分发Docker
镜像的企业级Registry
服务器。Harbor
用于容器镜像管理,主要提供基于角色的镜像访问控制、镜像复制、镜像漏洞分析、镜像验真和操作审计等功能。迄今为止,Harbor
在 GitHub
上已获得超过 4700+ 颗星。
2.1 新建项目
默认是私有项目,必需通过docker login
登录后才能拉取或者提交
2.2 从私有仓库提交/拉取镜像
1.打tag
docker tag zookeeper:3.4 hub.zlt.com:8080/test-harbor/zookeeper:3.4
2.提交镜像
docker push hub.zlt.com:8080/test-harbor/zookeeper:3.4
3.拉取镜像
docker pull hub.zlt.com:8080/test-harbor/zookeeper:3.4
2.3 问题锦集
2.3.1 http: server gave HTTP response to HTTPS client
原因:因为Docker从1.3.X之后,与docker registry交互默认使用的是https,然而此处搭建的私有仓库只提供http服务,所以当与私有仓库交互时就会报上面的错误。为了解决这个问题需要在启动docker server时增加启动参数为默认使用http访问。
解决:修改docker启动配置文件
vim /usr/lib/systemd/system/docker.service
找到ExecStart在后面添加--insecure-registry hub.zlt.com:8080
:
重启docker
systemctl daemon-reload systemctl restart docker
2.3.2 denied: requested access to the resource is denied
解决:通过docker login
登录后再操作