当前位置: 首页 > news >正文

Harbor对接非AWS对象存储

背景说明

项目的应用完全运行在一个离线环境中,同时通过K8S的方式进行容器编排。需要自建一个harbor的镜像仓库。并且通过私有云提供的S3服务进行容器镜像的持久化存储。我踩的其中的一个坑就是S3的region名字非AWS的标准名称。运行时抱错如下:


2025-04-21T07:47:17Z [ERROR] [/registryctl/config/config.go:63]: failed to load storage driver, err:invalid region provided: cn-nanjing-mic-d01
2025-04-21T07:47:17Z [FATAL] [/registryctl/main.go:102]: Failed to load configurations with error: invalid region provided: cn-nanjing-mic-d01

前置条件

虚拟机需要安装Docker

部署步骤

  1. 下载harbor的离线安装文件并上传到服务器/data路径,并解压缩,我使用的时2.13.0的版本
    在这里插入图片描述
  2. 导入harbor的离线镜像
cd /data/ && docker load < harbor.v2.13.0.tar.gz
  1. 解压缩并配置harbor域名和S3相关,将harbor.yml.tmpl 复制为harbor.yml,编辑内容如下:
hostname: harbor.wldc.site
http:port: 80
https:port: 443certificate: /data/harbor/ssl/tls.crt #harbor的https的证书private_key: /data/harbor/ssl/tls.key #harbor的https的密钥
harbor_admin_password: Harbor12345 #harbor管理员的密码
database:password: root123max_idle_conns: 100max_open_conns: 900conn_max_lifetime: 5mconn_max_idle_time: 0
data_volume: /data/harbor/data
storage_service:s3:accesskey: UHjTUgnGzUOo8EcB #需要对接的S3的AKsecretkey: 4fmshy************6AYrxdIb #需要对接的S3的SKregion: cn-nanjing-mic-d01bucket: prd-dcmpregionendpoint: http://oss-cn-nanjing-mic-d01-a.res.mic.nj.abc.com/ #需要对接的S3的接入点,在模板配置中没有这个参数,需要把endpoint修改为这个。不然就会报背景里面提到的错误secure: false #不启用httpsv4auth: truechunksize: 5242880rootdirectory: /registryca_bundle: /data/harbor/ssl/ca.pem #S3 的https的CA证书文件
trivy:ignore_unfixed: falseskip_update: falseskip_java_db_update: falseoffline_scan: falsesecurity_check: vulninsecure: falsetimeout: 5m0s
jobservice:max_job_workers: 10max_job_duration_hours: 24job_loggers:- STD_OUTPUT- FILE
notification:webhook_job_max_retry: 3
log:level: infolocal:rotate_count: 50rotate_size: 200Mlocation: /var/log/harbor
_version: 2.13.0
proxy:http_proxy:https_proxy:no_proxy:components:- core- jobservice- trivy
upload_purging:enabled: trueage: 168hinterval: 24hdryrun: false
cache:enabled: falseexpire_hours: 24
  1. 运行prepare命令,该命令会自动生成compose文件以及相关的目录和配置文件
cd /data/harbor && chmod +x ./prepare && ./prepare
  1. 启动harbor
cd /data/harbor && docker compose up -d
  1. 验证harbor是否正常运行并对接成功S3
docker login harbor.wldc.site
docker tag base/httpbin:master-202208132308-24 harbor.wldc.site/base/httpbin:master-202208132308-24
docker push harbor.wldc.site/base/httpbin:master-202208132308-24 

对象存储中已经存储了容器的镜像文件
在这里插入图片描述

相关文章:

  • Oracle DBA培训一般多长时间?
  • 腾讯云×数语科技:Datablau DDM (AI智能版)上架云应用!
  • 美创科技20周年庆典顺利举行
  • 【云原生】k8s集群部署最新版ELFK日志采集平台
  • UML 状态图:陪伴机器人系统示例
  • 稳压二极管详解:原理、作用、应用与选型要点
  • 文件有几十个T,需要做rag,用ragFlow能否快速落地呢?
  • Excel/WPS表格中图片链接转换成对应的实际图片
  • AI对话高效输入指令攻略(三):使用大忌——“AI味”
  • 发布事件和Insert数据库先后顺序
  • 头歌实训之SQL视图的定义与操纵
  • 聚类算法(K-means、DBSCAN)
  • 基于mybatis与PageHelper插件实现条件分页查询(3.19)
  • iOS中使用AWS上传zip文件到Minio上的oss平台上
  • 使用Matlab工具将RAW文件转化为TXT文件,用于FPGA仿真输入
  • 用Mac M4构建多架构Docker镜像指南
  • 若依框架免登陆、页面全屏显示、打开新标签页(看板大屏)
  • neo4j-community-3.5.5-unix.tar.gz安装
  • SpringBoot + Vue 实现云端图片上传与回显(基于OSS等云存储)
  • map和set封装
  • 隽逸不凡——北京画院藏近代篆刻家金城花鸟画赏析
  • 针对“二选一”,美团再次辟谣
  • 曼谷没有“邻家男孩”:跨境追星族经历的“余震”
  • 分离19年后:陈杨梅首度露面,父亲亲手喂棉花糖给女儿吃
  • 广西气象干旱面积97.5%,影响人畜饮水、农业生产
  • 俄乌互指对方未遵守复活节临时停火提议