harbor 仓库迁移升级
harbor 仓库迁移升级
- harbor仓库安装
- 数据传输
- 仓库切换
版本 v1.8.0 v2.3.5
harbor仓库安装
环境准备:安装docker详见:docker 的介绍和部署,并下载docker-compose详见:docker 三剑客compose。
现有支持的安装harbor仓库的方式有两种,一种是离线安装,一种是在线安装。
wget https://github.com/goharbor/harbor/releases/download/v2.3.5/harbor-offline-installer-v2.3.5.tgz
## 离线安装详见:docker仓库
wget https://github.com/goharbor/harbor/releases/download/v2.3.5/harbor-online-installer-v2.3.5.tgz
#在线安装
此次由于网络是良好的,直接选择在线安装:
先将下载好的在线安装包解压至/usr/local/harbor
下;
将提供的模板 harbor.yml.tmpl 复制为 harbor.yml ,并根据需求进行修改;
5 hostname: reg.mydomain.com #设定自己的域名,此处先不要和旧仓库同名,不然在后续从旧仓库进行数据同步时连接会有报错
8 http: #选择是否开启80端口
9 #port for http, default is 80. If https enabled, this port will redirect to https port
10 port: 80
12 #https related config
13 https: #选择是否开启443端口,如果开启443端口,需要配置nginx认证文件和key;
15 port: 443
16 #The path of cert and key files for nginx
17 certificate: /your/certificate/path
18 private_key: /your/private/key/path34 harbor_admin_password: Harbor12345 #设定harbor仓库登录的密码
47 data_volume: /data #设定仓库数据挂载目录
- 初始化准备,在当前目录下执行命令 ./prepare 来使修改的文件生效;并生成 docker-compose.yml文件。Harbor 的每个组件都是以 Docker 容器的形式构建的,使用 docker-compose 来对它进行部署。
- 开始安装,在当前目录执行命令 ./install.sh --help 来查看安装可以选择的插件;其中包括 --with-notary (公正服务)、–with-trivy (漏洞扫描器)、–with-chartmuseum (图表支持) ,根据需要选择需要的插件来进行安装。
- 检测,等所有镜像下载完成之后,在当前目录执行命令 docker-compose ps 查看所有容器的状态,当都起来之后,便可根据自己设定的域名或IP:端口进行访问。然后本地进行上传和下载镜像的测试。当遇到登录问题是,需要在在docker 中加入非安全仓库的信息,然后重启docker服务。
数据传输
在仓库管理处,新建目标。在新建目标时可能会报错,如果是域名的问题,需要进入 harbor-core 和 harbor-jobservice 中添加本地解析;报错日志可以在harbor.yaml文件中指定的日志目录下的core.log中查看具体报错原因。
同步数据,选择新仓库拉旧仓库的镜像,此处要选择刚才添加的目标。
仓库切换
- 在数据传输完之后,需要将harbor.yaml文件中的域名给改为和旧仓库一致;然后重新初始化,初始化完成之后在对应的目录用命令 docker-compose up -d 来启动服务;
- 查看当前镜像仓库是否和同步之前的一致;在本机先进行上传和下载镜像的测试;然后在所有的k8s节点测试;
修改所有k8s节点的hosts本地解析,将其执向转发的nginx来进行管理。
后续发现还是会有一定的流量会到旧的仓库去拉镜像,随后在旧仓库的服务器上关闭旧仓库,搭建了haproxy的代理,将所有请求旧仓库的流量转发到新的仓库。并在旧仓库上进行抓包,确定遗漏的没有改到解析的服务器,并进行更改,当抓包几日没有新的请求时,可以关闭代理,此次迁移完整结束。
抓包:tcpdump -nn -i any -s 0 tcp port 443 and dst host 旧仓库IP and ! host 新仓库IP
相关文章:

harbor 仓库迁移升级
harbor 仓库迁移升级 harbor仓库安装数据传输仓库切换版本 v1.8.0 v2.3.5 harbor仓库安装 环境准备:安装docker详见:docker 的介绍和部署,并下载docker-compose详见:docker 三剑客compose。 现有支持的安装harbor仓库的方式有两…...
评论功能设计思路~
文章目录 评论功能设计框架1、定义2、目标3、动机4、评论类别**5、评论互动****6、评论区展示结构****6.1 主题式****6.2 平铺式****6.3 盖楼式****7、评论排序机制****8、评论加载形式****9、其他**结语评论功能设计框架 1、定义 评论是指针对于事物进行主观或客观的自我印象…...

算法训练营 day52 动态规划 买卖股票的最佳时机系列1
算法训练营 day52 动态规划 买卖股票的最佳时机系列1 买卖股票的最佳时机 121. 买卖股票的最佳时机 - 力扣(LeetCode) 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票…...

3.基于分割的文本检测算法--DBNet++
文章目录1.概况2.DBNet中的主要方法2.1 网络结构2.2 适应特征图融合模块(Adaptive Scale Fusion Module, ASF)3.ASF模块的源码实现参考资料欢迎访问个人网络日志🌹🌹知行空间🌹🌹 1.概况 2022年02月份论文:Real-Time S…...
IOS打包、SDK接入记录等
IOS打包、SDK接入记录等 Mac上安装HCLR路径 /Applications/Unity/Hub/Editor/2019.4.40f1c1/Unity.app/Contents/il2cpp HCLR 指定4.40是要Unity启动打开的il2cpp,否则HCLR Installer他会报找不到MonoBleedingEdge Mac删除证书 只能点击钥匙串做上角的登录后&…...

【C++】类与对象(引入)
目录 前言 类的引入 类的定义 封装与访问限定符 封装 访问限定符 类的实例化 类的大小 this指针 特性 前言 🎶我们都知道,C语言是面向过程的编程,而C是面向对象的编程,更多体现在编程的关注点上。 🎶就拿洗…...

Redis 高级数据类型
文章目录一、Bitmaps:属性状态统计二、HyperLogLog:基数统计三、GEO:地理位置信息计算提示:以下是本篇文章正文内容,Redis系列学习将会持续更新 一、Bitmaps:属性状态统计 Bitmaps类型: 统计一…...
Java8 新特性-函数式接口
什么是函数式接口 先来看看传统的创建线程是怎么写的 Thread t1 new Thread(new Runnable() {Overridepublic void run() {System.out.println("t1");} }); t1.start();再来看看使用了函数式接口是怎么写的 Thread t2 new Thread(() -> System.out.println(&…...

这套软件测试试卷能打90分,直接入职字节吧
目录 一.填空 二、 判断题(正确的√,错误的╳)共10分,每小题1分 三、数据库部分:(共15分) 四、设计题。本题共 1 小题,满分 20分 一.填空 1、 系…...

GUI可视化应用开发及Python实现
0 建议学时 4学时,在机房进行 1 开发环境安装及配置 1.1 编程环境 安装PyCharm-community-2019.3.3 安装PyQt5 pip install PyQt5-tools -i https://pypi.douban.com/simple pip3 install PyQt5designer -i https://pypi.douban.com/simple1.2 环境配置 选择“…...

【论文简述】GMFlow: Learning Optical Flow via Global Matching(CVPR 2022)
一、论文简述 1. 第一作者:Haofei Xu 2. 发表年份:2022 3. 发表期刊:CVPR oral 4. 关键词:光流、代价体、Transformers、全局匹配、注意力机制 5. 探索动机:过去几年中具有代表性的光流学习框架的核心估计方式没有…...

【Spark分布式内存计算框架——离线综合实战】5. 业务报表分析
第三章 业务报表分析 一般的系统需要使用报表来展示公司的运营情况、 数据情况等,本章节对数据进行一些常见报表的开发,广告数据业务报表数据流向图如下所示: 具体报表的需求如下: 相关报表开发说明如下: 第一、数据…...

力扣-删除重复的电子邮箱
大家好,我是空空star,本篇带大家了解一道简单的力扣sql练习题。 文章目录前言一、题目:196. 删除重复的电子邮箱二、解题1.正确示范①提交SQL运行结果2.正确示范②提交SQL运行结果3.正确示范③提交SQL运行结果4.正确示范④提交SQL运行结果5.其…...
git基础
git-note Github Manual | GitHub Cheat Sheet | Visual Git Cheat Sheet 安装配置工具分支创建仓库.gitignore文件同步更改进行更改重做提交术语表 安装 desktop.github.com | git-scm.com 配置工具 对所有本地仓库的用户信息进行配置 对你的commit操作设置关联的用户名…...

postgres 源码解析50 LWLock轻量锁--1
简介 postgres LWLock(轻量级锁)是由SpinLock实现,主要提供对共享存储器的数据结构的互斥访问。LWLock有两种锁模式,一种为排他模式,另一种是共享模式,如果想要读取共享内存中的内容,需要在读取…...
JVM优化常用命令
jps列出正在运行的虚拟机进程jpstop列出线程CPU或内存占用top top -Hp pid //列出pid全部线程jstat监视虚拟机运行状态信息jstat -gc pid 5000 //每隔5s打印gc情况jmapjmap -heap pid //输出jvm内存情况 jmap -histo:live pid | more //查看堆内存中的对象数量和大小 jma…...
按键中断实验
gpio.c#include"gpio.h"//给gpio使能和设置为输入模式void hal_gpio_init(){//使能GPIOF控制器RCC->MP_AHB4ENSETR|(0x1<<5);//通过GPIOF_将pf9/pf7/pf8设置为输入模式 GPIOF->MODER&(~(0x3<<18));GPIOF->MODER&(~(0x3<<14));GPI…...

kubernetes入门介绍,从0到1搭建并使用
Kubernetes是一个容器编排系统,用于自动化应用程序部署、扩展和管理。本指南将介绍Kubernetes的基础知识,包括基本概念、安装部署和基础用法。 基础介绍 Kubernetes是Google开发的开源项目,是一个容器编排系统,可以自动化部署、…...

【C语言进阶】字符串函数与内存函数的学习与模拟实现
📝个人主页:Sherry的成长之路 🏠学习社区:Sherry的成长之路(个人社区) 📖专栏链接:C语言进阶 🎯长路漫漫浩浩,万事皆有期待 文章目录1.字符串处理函数介…...

【JavaEE初阶】第一节.多线程(进阶篇 ) 常见的锁策略、CAS及它的ABA问题
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、常见的锁策略 1.1 乐观锁 vs 悲观锁 1.2 普通的互斥锁 vs 读写锁 1.3 重量级锁 vs 轻量级锁 1.4 自旋锁 vs 挂起等待锁 1.5 公平…...

第19节 Node.js Express 框架
Express 是一个为Node.js设计的web开发框架,它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用,和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...
Leetcode 3576. Transform Array to All Equal Elements
Leetcode 3576. Transform Array to All Equal Elements 1. 解题思路2. 代码实现 题目链接:3576. Transform Array to All Equal Elements 1. 解题思路 这一题思路上就是分别考察一下是否能将其转化为全1或者全-1数组即可。 至于每一种情况是否可以达到…...

.Net框架,除了EF还有很多很多......
文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...

【JVM】- 内存结构
引言 JVM:Java Virtual Machine 定义:Java虚拟机,Java二进制字节码的运行环境好处: 一次编写,到处运行自动内存管理,垃圾回收的功能数组下标越界检查(会抛异常,不会覆盖到其他代码…...
工程地质软件市场:发展现状、趋势与策略建议
一、引言 在工程建设领域,准确把握地质条件是确保项目顺利推进和安全运营的关键。工程地质软件作为处理、分析、模拟和展示工程地质数据的重要工具,正发挥着日益重要的作用。它凭借强大的数据处理能力、三维建模功能、空间分析工具和可视化展示手段&…...

Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...

多种风格导航菜单 HTML 实现(附源码)
下面我将为您展示 6 种不同风格的导航菜单实现,每种都包含完整 HTML、CSS 和 JavaScript 代码。 1. 简约水平导航栏 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport&qu…...

ArcGIS Pro制作水平横向图例+多级标注
今天介绍下载ArcGIS Pro中如何设置水平横向图例。 之前我们介绍了ArcGIS的横向图例制作:ArcGIS横向、多列图例、顺序重排、符号居中、批量更改图例符号等等(ArcGIS出图图例8大技巧),那这次我们看看ArcGIS Pro如何更加快捷的操作。…...
MySQL用户和授权
开放MySQL白名单 可以通过iptables-save命令确认对应客户端ip是否可以访问MySQL服务: test: # iptables-save | grep 3306 -A mp_srv_whitelist -s 172.16.14.102/32 -p tcp -m tcp --dport 3306 -j ACCEPT -A mp_srv_whitelist -s 172.16.4.16/32 -p tcp -m tcp -…...
Java多线程实现之Thread类深度解析
Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...