编译Harbor,使其适配ARM架构。本文以v2.10.2为例。
拉取源码
git clone https://github.com/goharbor/harbor.git
cd harbor
# 切换到分支
git checkout -b v2.10.2 v2.10.2
修改photon
镜像
# 低版本替换成3.0镜像。 新的harbor版本,已经不需要修改了
find ./ -type f -name "Dockerfile*" | xargs sed -i "s#photon:2.0#photon:3.0#g"
修改 MakeFile
sed -i "s#PULL_BASE_FROM_DOCKERHUB=true#PULL_BASE_FROM_DOCKERHUB=false#g" ./Makefile
sed -i "s#BUILDBIN=false#BUILDBIN=true#g" ./Makefile
修改spectral
# 这个如果其他版本harbor执行,也是可以自己改的。但是需要具体调试了
sed -i 's#SPECTRAL_VERSION=v6.1.0#SPECTRAL_VERSION=v6.11.0#g' ./Makefile
sed -i 's#SPECTRAL_VERSION/spectral-linux#SPECTRAL_VERSION/spectral-linux-arm64#g' ./tools/spectral/Dockerfile
修改 make/photon/Makefile
# 删除 --no-cache 参数
sed -i 's#--no-cache##g' make/photon/Makefile
修改 make/photon/exporter/Dockerfile
sed -i 's#GOARCH=amd64#GOARCH=arm64#g' make/photon/exporter/Dockerfile
修改 tools/swagger/Dockerfile
sed -i 's#swagger_linux_amd64#swagger_linux_arm64#g' tools/swagger/Dockerfile
构建离线安装包
make package_offline VERSIONTAG=v2.10.2 PKGVERSIONTAG=v2.10.2 UIVERSIONTAG=v2.10.2
评论区