Ubuntu 安装 Harbor

news/2024/5/6 7:40:09

一、安装 docker

原文参考传送门

1st 卸载系统自带的 docker 应用

for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done

2nd 设置Docker 的apt源

# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc# Add the repository to Apt sources:
echo \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

3rd 安装 docker 

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

4th 测试 

sudo docker run hello-world

二、安装 harbor

1st 下载 harbor 的离线安装包

下载地址

2nd 解压

tar xzvf harbor-offline-installer-version.tgz

3rd 生成相关证书

a) 生成 CA 证书私钥

openssl genrsa -out ca.key 4096

b) 生成 CA 证书

openssl req -x509 -new -nodes -sha512 -days 3650 \-subj "/C=CN/ST=Beijing/L=Beijing/O=example/OU=Personal/CN=wayne.harbor.com" \-key ca.key \-out ca.crt

c)生成服务端证书

openssl genrsa -out wayne.harbor.com.key 4096

 d)生成 CSR 文件

openssl req -sha512 -new \-subj "/C=CN/ST=Beijing/L=Beijing/O=example/OU=Personal/CN=wayne.harbor.com" \-key wayne.harbor.com.key \-out wayne.harbor.com.csr

e)生成 X509 V3 扩展文件

cat > v3.ext <<-EOF
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth
subjectAltName = @alt_names[alt_names]
DNS.1=wayne.harbor.com
DNS.2=wayne.harbor
DNS.3=wayne
EOF

f)生成 crt 文件

openssl x509 -req -sha512 -days 3650 \-extfile v3.ext \-CA ca.crt -CAkey ca.key -CAcreateserial \-in wayne.harbor.com.csr \-out wayne.harbor.com.crt

 4th 使用证书

A .harbor使用 

1th 将 crt 和 key 文件,提供给 harbor 使用。

复制到/data/docker/harbor/certs中。这个 certs 文件夹可能没有。因此需要创建

2nd 复制 harbor.yml.tmpl 文件到 harbor.yml,并配置域名和证书
cp harbor.yml.tmpl harbor.yml
vim harbor.yml

 B.docker 使用

 1st 将之前生成的 crt 文件转换成 cert 文件,以供 docker 使用。

注意是之前生成的,而不是拷贝之后的crt

cd /data/docker/certopenssl x509 -inform PEM -in wayne.harbor.com.crt -out wayne.harbor.com.cert

 原因

The Docker daemon interprets .crt files as CA certificates and .cert files as client certificates.

 2nd 将证书复制到 docker 的 certs.d对应域名的文件夹下。

如果没有文件夹,要提前建好

cp wayne.harbor.com.cert /etc/docker/certs.d/wayne.harbor.com/
cp wayne.harbor.com.key /etc/docker/certs.d/wayne.harbor.com/
cp ca.crt /etc/docker/certs.d/wayne.harbor.com/
3rd 重启 docker 服务 
systemctl restart docker

 5th 执行安装

 在 harbor的文件夹内,执行./install.sh文件

根据提示,等待安装完成或者根据提示,进行报错修改

三、测试

安装完成后,浏览器输入 https://wayne.harbor.com 地址之后,就可以打开相关页面了

四、 问题 

问题一、Chrome 访问 https 时,可能提示因为证书问题,导致无法访问的问题。

此时需要在电脑上导入自己生成的相关证书,并改为信任之后,重新打开浏览器就行

苹果

windows

 

问题二、火狐无法访问。

目前没有好招。 


http://www.mrgr.cn/p/27778014

相关文章

SpanBert学习

SpanBERT: Improving Pre-training by Representing and Predicting Spans 核心点 提出了更好的 Span Mask 方案&#xff0c;也再次展示了随机遮盖连续一段字要比随机遮盖掉分散字好&#xff1b;通过加入 Span Boundary Objective (SBO) 训练目标&#xff0c;增强了 BERT 的性…

流量分析(buuctf版)

1.被嗅探的流量分析题目为文件传输的数据文件传输一般直接找POST(大写)包搜索框搜素http.request.method==POST得到两个包体,其中一个含有图片文件打开含图片的包体向下滑动得到flag,flag为flag{da73d88936010da1eeeb36e945ec4b97}2.easycap翻译为简单的帽子,感觉没什么特…

python包:torchvision

torch 是一个偏向于底层的包, 做一些较为基础 矩阵运算对于不同的样本 比如图像, 声音 ,文字, 之类,有更加针对性的包比如,针对图片 他的矩阵处理专用包就是:torchvision这个就需要 单独安装,这个包的体积不是很大,我们可以直接尝试 安装pip install torchvision…

推荐一款websocket接口测试工具

网址&#xff1a;Websocket在线测试-Websocket接口测试-Websocket模拟请求工具 http://www.jsons.cn/websocket/ 很简单输入以ws开后的网址就可以了 这个网址是你后台设置的 如果连接成功会砸提示框内显示相关字样&#xff0c;反之则不行

1名工程师轻松管理20个工作流,创业企业用Serverless 让数据处理流程提效

北京语势科技有限公司成立于2023年6月,语势科技定位为“智能投资时代的主题入口”,在资管行业从以机构为核心转向以用户为核心的变革时代,通过打造主题投资引擎,赋能普惠投资一体化,打造以投资者和资管机构为主题和核心、自然语言交互形式为入口的“新桥梁”。 语势科技日…

MIGO BAPI BAPI_GOODSMVT_CREATE 各种类型使用汇总

***********GOODSMVT_CODE取值含义********01 MB01*02 MB31*03 MB1A "发*04 MB1B "转储*05 MB1C "其它收货*06 MB11*07 MB04 经常会遇到一些自定义的移动类型,但是并不知道对应的goodsmvt_code是多少。可以用如下方法进行查找 首先…

在PostgreSQL中如何有效地批量导入大量数据,并确保数据加载过程中的性能和稳定性?

文章目录 解决方案1. 使用COPY命令2. 调整配置参数3. 禁用索引和约束4. 使用事务5. 并发导入 总结 在PostgreSQL中&#xff0c;批量导入大量数据是一个常见的需求&#xff0c;特别是在数据迁移、数据仓库填充或大数据分析等场景中。为了确保数据加载过程中的性能和稳定性&#…

CSAPP Lab 7 Malloc Lab

本次实验的内容也比较清晰,只需要完成一个手写的 malloc 动态内存分配器即可。 书上第 \(9\) 章第 \(9\) 节介绍了这样的分配器的实现方法。 实验要求 本次实验提供了基本的框架,需要完成下面几个函数: int mm_init(void); void *mm_malloc(size_t size); void mm_free(void…

ROS分布式通讯配置

4WD 必读&#xff1a;分布式通讯是相对于用虚拟机来连接小车上主机来说&#xff0c;如果是 4WD 笔记本无主 机用户&#xff0c;不存在分布式通讯一说。 1.4WD 用户单笔记设置一&#xff0c;连接底盘和雷达还有摄像头。 因为虚拟机带宽问题&#xff0c;无法保证摄像头正常运行。…

PeLK:101 x 101 的超大卷积网络,同参数量下反超 ViT | CVPR 2024

最近,有一些大型内核卷积网络的研究,但考虑到卷积的平方复杂度,扩大内核会带来大量的参数,继而引发严重的优化问题。受人类视觉的启发,论文提出了外围卷积,通过参数共享将卷积的复杂性从 \(O(K^{2})\) 降低到 \(O(\mathrm{log} K)\),有效减少 90% 以上的参数数量并设法将…

CSAPP Lab5 Cache Lab

到实验 5 啦! 这次的实验是有关高速缓存的。 让我们先来复习一下高速缓存的基础知识吧! 复习 高速缓存的结构在一个存储器地址有 \(m\) 位的系统上,一共有 \(M = 2^m\) 个地址。假设高速缓存被组织成一个有 \(S = 2^s\) 个高速缓存组的数组,其中每个组包括 \(E\) 个高速缓存…

CSAPP Lab6 Shell Lab

本次实验的任务很清晰,实现一个简单的 Unix Shell。需要用到基础的进程控制、信号处理等知识。 简单来说,实验已经提供了一些简单的功能,我们需要在此基础上,实现下面的功能:eval:解析和解释命令行的主例程。[70行] builtin_cmd:识别并解释内置命令 quit(退出)、fg(前…

CSAPP Lab-3 ATTACKLAB

书接上回,这次做到了第三个 Lab 啦。 任务描述 这一个 Lab 的任务就更有意思了,实验给了我们两个程序,每个程序都会让我们输入一行字符串,而它们是通过下面这个函数来读取的: unsigned getbuf() {char buf[BUFFER_SIZE];Gets(buf);return 1; }其中,Gets 函数和 C 库的 ge…

SQL Server实战一:创建、分离、附加、删除、备份数据库

本文介绍基于Microsoft SQL Server软件,实现数据库创建、分离、附加、删除与备份的方法~本文介绍基于Microsoft SQL Server软件,实现数据库创建、分离、附加、删除与备份的方法。 目录1 交互式创建数据库2 Transact-SQL指定参数创建数据库3 交互式分离数据库testbase14 使用系…

Python写个二维码

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、进入官网下载二、下载一下三.输入代码 前言 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 一、进入官网下载 官网 pip insta…

CSAPP Lab-2 BOMBLAB

第二个 Lab 就比较有趣了。 这一个 Lab 的任务是,我们得到了一个 bomb 炸弹程序,这个炸弹程序有 \(6\) 个 phase,每个 phase 都会读取我们的输入,判断我们的输入是否符合要求,如果正确这个 phase 的炸弹就会被拆除,否则炸弹就会爆炸。我们需要借助各种工具,对程序进行反…

python包:torch

torch 这个包非常大,安装也非常麻烦。 基本可以上,他是深度学习里面重要的一个包, 要安装torch 首先要确定自己的操作系统, 自己的python 版本, 自己的版本, 是要安装CPU版本的 torch, 还是GPU版本的torch *** 我这边是WIN10专业版。Python 3.8.10 。我自己有泰坦RT…

HarmonyOS-静态库(SDK)的创建和使用

文章目录 一、静态库&#xff08;SDK&#xff09;二、创建静态库1.新建静态库模块2. 开发静态库内容3. 编译静态库 三、使用静态库1. 配置项目依赖2. 在应用中使用静态库3. 注意事项 四、打包错误1. library引用本地har包错误 一、静态库&#xff08;SDK&#xff09; 在Harmon…

网络流做题记录

网络流的建图灵活,需要大量练习。 一些常见套路:拆点:一般来说可以把一个点拆为一个入点和一个出点并连边,用于点边转化。连 INF 边:这种边不可能包含在最小割中,可以用来将点定向。建立超级源点和超级汇点:用于构建网络流模型。加辅助点:比较灵活,可以用于处理多种问…

CMU 15-751 CS Theory Toolkit Lecture Lecture 3 - Factorials Binomial Coefficients

CMU 15-751 课程第三课笔记。 接上回 CMU15-751-2。 同样照抄参考了 Lecture Note。 今天学习的是阶乘和二项式系数的渐进分析,这两种的出现频率非常高,因此我们很有必要熟悉他们的渐进方法。这也是我们做更多渐进分析的练习的机会。阶乘(Factorials) \(n! = 2^{\Theta(n\l…