由于在Goharbor官网未找到arm64版本的离线镜像 GoHarbor arm64 安装 issue,因此需要自己编译arm64的镜像或使用第三方的镜像。
本文使用了
bitnami/harbor-portal
的linux/arm64
镜像成功在Ubuntu 22.04 TLS on Raspberry Pi4B
上安装部署了Harbor服务,以下步骤提供参考 :)
安装
- 参考
- 下载
docker-compose.yml
和 配置文件
# mkdir -p /[your_path]/docker_container/harbor
# cd /[your_path]/docker_container/harbor
# curl -LO https://raw.githubusercontent.com/bitnami/containers/main/bitnami/harbor-portal/docker-compose.yml
# curl -L https://github.com/bitnami/containers/archive/main.tar.gz | tar xz --strip=2 containers-main/bitnami/harbor-portal && cp -RL harbor-portal/config . && rm -rf harbor-portal
# vim config/proxy/nginx.conf
- 网络环境说明:
Nginx(https,ZeroSSL) <-> harbor-nginx(non-SSL) <-> harbor
, 在Nginx端做了SSL Termination,因此需要参考Running Harbor with HTTP behind a HTTPS Reverse Proxy (nginx)
的办法修改harbor的nginx配置文件 - 修改
harbor-nginx
的配置config/proxy/nginx.conf
,将 HeaderX-Forwarded-Proto
都注释掉 - 修改
docker-compose.yml
, 指定镜像的平台参数platform: linux/arm64
部署
# docker-compose up -d
# docker-compose ps
Name Command State Ports
------------------------------------------------------------------------------------------------------------------
harbor-core /opt/bitnami/scripts/harbo ... Up 8080/tcp
harbor-db /opt/bitnami/scripts/postg ... Up 5432/tcp
harbor-jobservice /opt/bitnami/scripts/harbo ... Up 8080/tcp, 8443/tcp
harbor-portal /opt/bitnami/scripts/harbo ... Up 8080/tcp, 8443/tcp
harbor_redis_1 /opt/bitnami/scripts/redis ... Up 6379/tcp
harbor_registry_1 /opt/bitnami/scripts/harbo ... Up 5000/tcp
harbor_registryctl_1 /opt/bitnami/scripts/harbo ... Up 8080/tcp, 8443/tcp
nginx /opt/bitnami/scripts/nginx ... Up 0.0.0.0:8080->8080/tcp,:::8084->8080/tcp, 8443/tcp
- 部署的容器如果有状态不正常的情况,需要查看日志并解决问题(我安装时遇到了拉取的镜像平台不正确的问题,重新拉取了
linux/arm64
的镜像解决了问题),参考命令如下:
# docker-compose ps
# docker inspect [有问题的容器 id] | grep '"OS_ARCH="' -A 2
# docker image ls | grep '[有问题的镜像名称]'
# docker image rm [有问题的镜像名称]
# docker pull [有问题的镜像名称] --platform=linux/arm64
验证
- 访问harbor网站验证,eg:
harbor.test.com
- docker登录
docker login harbor.test.com
- docker push
# docker image ls
snowdreamtech/frpc 0.31.1 965cb5cff644 3 years ago 20.1MB
# docker tag snowdreamtech/frpc:0.31.1 harbor.test.com/frpc:0.31.1
# docker image ls
snowdreamtech/frpc 0.31.1 965cb5cff644 3 years ago 20.1MB
harbor.test.com/frpc 0.31.1 965cb5cff644 3 years ago 20.1MB
# docker push harbor.test.com/frpc:0.31.1
评论区