跳转至

harbor

Harbor是VMware公司开源了企业级Registry项目, 其的目标是帮助用户迅速搭建一个企业级的Docker registry服务 官方在线DEMO,注册账号然后使用 依赖docker-compose,所以需要先安装docker-compose

下载安装包

Release 页面下载最新的安装包,然后解压

tar xvf harbor-online-installer-v2.5.6.tgz

修改配置

# 把harbor.yml.tmpl复制一份为harbor.yml
vim harbor/harbor.yaml
# hostname 设置访问地址,支持IP,域名,主机名,禁止设置127.0.0.1
hostname = reg.mydomain.com
# harbor_admin_password 设置管理员密码

安装

sudo ./install.sh
安装后会自动启动harbor,访问id+端口就能访问

修改配置

$ docker-compose down -v
# 注:其实上面是停止 docker-compose.yml 中定义的所有容器
$ vim harbor.yml
$ prepare
$ docker-compose up -d

使用harbor

# 镜像推送
docker login 192.168.0.21:5005
# 查看 cat ~/.docker/config.json
# 镜像打包时候需要按一定规则 tag
docker pull nginx
docker tag nginx 192.168.0.21:5005/library/nginx:latest
docker push 192.168.0.21:5005/library/nginx
docker rmi -f 192.168.0.21:5005/library/nginx:latest
若推送镜像报以下错误
Error response from daemon: Get https://192.168.0.21:5005/v1/users/: http: server gave HTTP response to HTTPS client
原因为,docker 默认使用的是 https 协议,而搭建的 Harbor 是 http 提供服务的,所以要配置可信任。PS:如果 Harbor 是 https 的就不会报该错误。
# vim /etc/docker/daemon.json

{
 "registry-mirrors": ["http://xxx.m.daocloud.io"],
 "insecure-registries":["192.168.0.21:5005"]
}

# 重启docker
systemctl restart docker

评论