镜像仓库harbor(arm)安装部署
前言:
harbor官网目前没有arm架构的软件包可操作,需要网上有很多前辈分享的软件包,镜像,或者自行构建镜像的操作,都有部署的流程!!
我自行构建过镜像,构建过程的艰辛真是一言难尽呀,几乎每一次操作都是失败,成功后,下一步操作还是失败,解决后接着下一步又报错,反反复复这过程花了几个钟,你能想象得有多难操作,最终还是以失败告终!!!
最后,我下载了诸位前辈分享的软件包 - harbor-v2.3.4版本,拉取了已经构建好的镜像,拉取的时候也是花了几个钟,所以,为了小伙伴们免去复杂的操作,特此在这分享,可以按照我的操作流程安装部署,亲测有效!!
使用机器设备:MacBook Pro m1pro
虚拟系统:Ubuntu 22.04.3 LTS
软件包:https://download.csdn.net/download/2301_76868495/89574100
镜像包上部分:https://download.csdn.net/download/2301_76868495/89574094
镜像包下部分:https://download.csdn.net/download/2301_76868495/89574103
因为CSDN上传资源限制1GB以内,所有镜像文件大小有3GB多,只能拆开来上传,下载下来可以整合到一个目录中就行
harbor部署操作
这里需要先安装 docker 和 docker-compose ,安装比较简单,就省略掉了,可以自行网查安装流程,安装的版本不重要,使用最近的安装包即可!!!
# 查看当前 docker 版本
root@docker-35:/usr/local/src# docker -v
Docker version 26.0.0, build 2ae903e
# 查看当前 docker-compose 版本
root@docker-35:/usr/local/src# docker-compose -v
Docker Compose version v2.23.3
# 准备好脚本,导入镜像;注意将下载下来的镜像整合在一个目录中,使用脚本一键导入镜像到docker本地仓库中
root@harbor-100:/usr/local/src/harbor-arm-install# cat load.sh
#!/bin/bash# 批量导出docker镜像_在此处填写镜像文件的保存目录
DIR=`pwd`
IMAGE_DIR="$DIR/package_harbor/" # 注意这里是镜像所在的目录
for IMAGE in `ls $IMAGE_DIR`
do
echo -e "正在导入镜像 \033[33m$IMAGE\033[0m"
docker load -i ${IMAGE_DIR}/${IMAGE}
echo -e "已成功导入镜像 \033[33m$IMAGE\033[0m"
echo ""
done
# 如果没有权限,给执行权限,然后执行
root@docker-35:/usr/local/src# chmod +x load.shroot@docker-35:/usr/local/src# ./load.sh
# 大概就这些包
# 解压软件包,进入目录
root@docker-35:/usr/local/src# unzip harbor-v2.3.4.zip
root@docker-35:/usr/local/src/# cd harbor-v2.3.4/
# 复制配置文件,保持良好的备份风格
root@docker-35:/usr/local/src/harbor_v2.3.4/harbor# cp harbor.yml.tmpl harbor.yml
# 修改harbor配置(根据需要修改域名账号密码)
root@docker-35:/usr/local/src/harbor_v2.3.4/harbor# vim harbor.yml
修改地方一:修改默认域名
hostname: harbor.hjf.com
修改二:注释https相关
# https related config
# https:
# https port for harbor, default is 443
# port: 443
# The path of cert and key files for nginx
# certificate: /your/certificate/path
# private_key: /your/private/key/path
修改地方三:密码(选)
harbor_admin_password: harbor123
# 修改 install.sh 安装文件,注释掉默认的导入当地镜像(这个我们在上面已经操作过,直接使用)
root@docker-35:/usr/local/src/harbor_v2.3.4/harbor# vim install.sh
.....
61 then
62 h2 "[Step $item]: loading Harbor images ..."; let item+=1
63 # docker load -i ./harbor*.tar.gz
64 fi
65 echo ""
# 修改 prepare 文件,使用自己导入的镜像(修改的地方是红色的区域)
root@docker-35:/usr/local/src/harbor_v2.3.4/harbor# vim prepare
docker run --rm -v $input_dir:/input \
-v $data_path:/data \
-v $harbor_prepare_path:/compose_location \
-v $config_dir:/config \
-v /:/hostfs \
--privileged \
goharbor/prepare:dev-arm prepare $@
# 如果文件没有执行权限,授予执行权限(防止执行安装报错)
root@docker-30:/usr/local/src/harbor# chmod +x common.sh
root@docker-30:/usr/local/src/harbor# chmod +x install.sh
root@docker-30:/usr/local/src/harbor# chmod +x prepare
# 正式安装harbor,产生docker-compose.yml文件
root@docker-30:/usr/local/src/harbor# ./install.sh
## 8、查看是否安装成功,容器有在运行
root@docker-30:/usr/local/src/harbor# docker ps
# 添加docker信任此域名
root@docker-30:/usr/local/src/harbor# vim /etc/docker/daemon.json
{
"exec-opts": [
"native.cgroupdriver=systemd"
],
"registry-mirrors": ["https://7eb34l3e.mirror.aliyuncs.com"],
"insecure-registries":["harbor.gf.com","192.168.10.30"]
}
# 重置配置,重启docker
root@docker-30:/usr/local/src/harbor# systemctl daemon-reload
root@docker-30:/usr/local/src/harbor# systemctl restart docker
# 在对应目录,启动harbor容器
root@docker-30:/usr/local/src/harbor# docker-compose start
# 在电脑hosts文件设置域名解析
[dealmon3w@Dealmon3w~ ]% vim /etc/hosts
192.168.10.30 harbor.hjf.com
# 谷歌/Firefox浏览器访问,账户密码登陆
访问:harbor.gf.com
账户是: admin
密码: harbor123
# docker login登陆harbor,在harbor页面添加目录apps
root@docker-35:/usr/local/src# docker login -u admin -p harbor123 harbor.hjf.com
# 随便找一个镜像,打标签,测试推送镜像
root@docker-35:/usr/local/src# docker tag 9a4277dcc9ff harbor.hjf.com/apps/app01:v1.0.1
root@docker-35:/usr/local/src# docker push harbor.hjf.com/apps/app01:v1.0.1
到此,harbor部署流程完成!!!
更多推荐
所有评论(0)