Harbor 部署
1、下载安装包(Harbor 镜像使用 Docker-Compose 做编排):
- Harbor 下载链接:https://github.com/goharbor/harbor/releases,我这里使用的是 harbor-offline-installer-v2.1.0.tgz;
- Docker-Compose 下载链接:https://github.com/docker/compose/releases,我这里使用的是 docker-compose-Linux-x86_64 1.27.4;
2、安装 Docker 并启动:
$ curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
$ systemctl start docker && systemctl enable docker
3、安装 Docker-Compose,由于这里我们下载的是 Docker-Compose 二进制包,所以直接添加执行权限就可以执行,为方便后续使用这里我将它添加到 $PATH
包含的路径下:
$ chmod +x docker-compose-Linux-x86_64 && mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose
4、配置 Harbor,因为 Harbor 是基于 Docker-Compose 启动的,所以我们下载是一个压缩包,其中包含一些 Harbor 所需镜像,如下:
# 解压 Harbor 压缩包
$ tar xf harbor-offline-installer-v2.1.0.tgz
# 修改配置,由于这里是简单演示,需要注释掉该配置文件中的 https 节配置,如果是通过 IP 访问则 hostname 配置为 IP,否则配置为对应的域名
$ cd harbor && mv harbor.yml.tmpl harbor.yml && vim harbor.yml
hostname: <Harbor 所在主机的 IP 或域名>
...
# 注释 HTTPS 节
#https:
# port: 443
# certificate: /your/certificate/path
# private_key: /your/private/key/path
...
5、加载镜像并启动:
$ ./install.sh
# 检查是否正常启动
$ docker-compose ps
Name Command State Ports
---------------------------------------------------------------------------------------------
harbor-core /harbor/entrypoint.sh Up (healthy)
harbor-db /docker-entrypoint.sh Up (healthy)
harbor-jobservice /harbor/entrypoint.sh Up (healthy)
harbor-log /bin/sh -c /usr/local/bin/ ... Up (healthy) 127.0.0.1:1514->10514/tcp
harbor-portal nginx -g daemon off; Up (healthy)
nginx nginx -g daemon off; Up (healthy) 0.0.0.0:80->8080/tcp
redis redis-server /etc/redis.conf Up (healthy)
registry /home/harbor/entrypoint.sh Up (healthy)
registryctl /home/harbor/start.sh Up (healthy)
5、使用浏览器访问 Harbor Web 页面,默认的用户名和密码分别为 admin
和 Harbor12345
。
注意:
- 如果后续要修改
harbor.yml
中的配置,在修改完之后需要执行./prepare
应用配置,然后重启容器。 - 由于这里的 Harbor 没有启用 HTTPS,而 Docker 默认是仅信任提供 HTTPS 的仓库服务的,所以要在 Docker 的
/etc/docker/daemon.json
中添加"insecure-registries": ["<Harbor 仓库域名或 IP>"]
以信任该 Harbor 仓库。 - 使用 Docker 向 Harbor 仓库推送镜像之前应该先执行
docker login <Harbor 仓库域名或 IP>
使用 Harbor 中的用户进行登录。
评论区