大家好,我是Linux运维工程师 Linke 。技术过硬,从不挖坑~
以下内容安装 Harbor.v1.9.0 为例
首先要有个高版本 docker ,例如我的是 docker.18.03.1-ce ,docker安装见 https://blog.csdn.net/qq_31547771/article/details/103475559
然后要有个高版本 docker-compose ,例如我的是 docker-compose.v1.24.1
wget https://github.com/docker/compose/releases/download/1.24.1/docker-compose-Linux-x86_64
mv docker-compose-Linux-x86_64 /user/local/bin/docker-compose
chmod +x /user/local/bin/docker-compose
docker 和 docker-compose 都安装好了,那么就可以安装 Harbor 了。
github地址:https://github.com/vmware/harbor/releases/
wget https://storage.googleapis.com/harbor-releases/release-1.9.0/harbor-online-installer-v1.9.0.tgz
tar xvf harbor-online-installer-v1.9.0.tgz
cd harbor
vim harbor.yml
修改配置文件中的 hostname 和 port 和 harbor_admin_password ,hostname 那项必须要改,其他两项可以不改。
修改好后,执行 ./install.sh
./install.sh
然后就是静静的等待,一定要静静的,直到出现下面的样子
然后就可以浏览器访问了
我上面的 hostname 配置的域名,因此要用 域名访问,做好 DNS 解析或者写 hosts 后,浏览器输入 http://reg.testaaa.com , 管理用户 admin ,密码为配置文件中设置的 Harbor12345
登录成功后,创建一个 公开 的 test 的项目组 ,如果创建 不公开 的项目需要登录 仓库后才能 pull 镜像
然后在 linux 上登录仓库后,就可以上传镜像了
cat > /etc/docker/daemon.json << EOF
{
"insecure-registries" : ["reg.testaaa.com"]
}
EOF
systemctl restart docker
docker login reg.testaaa.com -uadmin -pHarbor12345
登录成功是这样的
上传镜像,要上传镜像到仓库的话,镜像地址一定要改成仓库地址,否则docker是不知道要上传到哪个仓库中,如下图,有一个 goharbor/nginx-photon :v1.9.0 的镜像,要上传到自己的 harbor 仓库的 test,需要先修改它的镜像名称为 harbor仓库地址/项目组名称/镜像名:版本号 的组合
如下图所示
上传成功后,可以在 harbor 的 UI 页面查看到 ,如图
在其他机器 pull 此镜像的话,由于我创建的 test 项目组是 公开的 ,所以其他机器只需要在 /etc/docker/daemon.json 文件中加入 {"insecure-registries" : ["reg.testaaa.com"]} ,重启 docker 就可以 pull 此镜像了。如图