K8S部署Harbor(三部曲之一:配置)

天行健,君子以自强不息;地势坤,君子以厚德载物。


每个人都有惰性,但不断学习是好好生活的根本,共勉!


文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。


K8S部署Harbor三部曲:
K8S部署Harbor(三部曲之一:配置)本篇
K8S部署Harbor(三部曲之二:部署)
K8S部署Harbor(三部曲之三:使用)

一、环境要求

参考官网文档:https://goharbor.io/docs/2.5.0/install-config/installation-prereqs/

1. 硬件要求

以下为最低要求和建议要求参数表

资源 最低配置 建议配置
CPU 2 CPU 4 CPU
Mem 4 GB 8 GB
Disk 40 GB 160 GB

2. 软件要求

软件版本最低要求参数表

软件名称 软件版本最低配置 建议版本 描述
Docker engine 17.06.0 最新版本 可参考官网安装,用于操作容器
Docker Compose 1.18.0 最新版本 可参考官网安装,用于操作harbor
Openssl 最新版本 最新版本 用于生成harbor仓库的证书certificate和秘钥key

3. 网络端口

网络端口要求,可根据需要修改配置文件中的端口并开放服务器对应的端口
(本篇使用https,后面会修改配置文件中https和http对应的端口)

端口号 协议 描述
443 HTTPS 用于访问harbor仓库和核心API的https的请求端口,也可以在配置文件中修改此端口
4443 HTTPS 用于连接到harbor仓库的Docker内容信任的服务,仅当启用Notary时需要,可在配置文件中修改此端口
80 HTTP 用于访问harbor仓库和核心API的http请求的端口,也可以在配置文件中修改此端口

二、安装包下载

1. 官网下载地址(外网github)

离线安装包harbor-offline-installer-v2.10.0.tgz官网下载链接
如果电脑可访问外网github网址则可在服务器中使用wget命令直接下载到服务器

wget https://github.com/goharbor/harbor/releases/download/v2.10.0/harbor-offline-installer-v2.10.0.tgz

2. 国内下载地址(更快)

离线安装包harbor-offline-installer-v2.10.0.tgz国内下载链接


三、软件安装

1. 安装Docker

这个应该没有什么问题,大多数用k8s的施主应该都装了Docker
不过依然附上一个参考文章:K8S集群中安装Docker

2. 安装Docker Compose

主要用于管理harbor的多个docker实例

2.1 yum命令安装docker compose

yum install -y docker-compose

2.2 github官网资源安装docker-compose

若yum命令执行失败,执行以下方式安装

sudo curl -L "https://github.com/docker/compose/releases/download/v2.5.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

2.3 备用方案安装docker-compose

若以上两种方式都无法获取,可参考文章使用加速地址安装docker-compose:Linux系统安装docker-compose
安装后可使用docker-compose version查看版本来确保安装完成

2.4 配置执行权限

将安装的docker-compose设置为可执行

sudo chmod +x /usr/local/bin/docker-compose

2.5 全局配置

将docker-compose配置为全局可执行,即任何路径都可运行该命令

sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

后面好像需要指定docker-compose.yml文件位置来全局使用,先不管,直接执行上面这个命令

3. 安装openssl

主要用于生成https访问harbor的证书和秘钥,如只需要使用http访问harbor的施主可以不安装

yum install -y openssl

在这里插入图片描述


四、证书秘钥配置

此部分用于设置https安全访问所需要的证书秘钥
harbor仓库基础访问方式有两种,一种http一种https
仅使用http访问harbor的施主可以跳过,本篇执行

1. 文件夹创建

创建文件夹用于存放生成的证书秘钥文件

mkdir -p /harbor/certs/

在这里插入图片描述

2. 秘钥生成

可在当前位置生成后再将文件移动到certs文件夹中,也可cd命令直接进入certs文件夹中生成
本篇在当前位置生成后再移动到certs文件夹

openssl genrsa -out ca.key 4096

在这里插入图片描述
注意:该文件的生成位置,后续就要在同样的路径下进行第3步的操作,在别的路径下执行会找不到ca.key文件
如我在/harbor/certs路径下执行第2步,就要在该路径下执行第3步
ls命令查看生成的ca.key
在这里插入图片描述

3. 证书秘钥与IP绑定

生成证书秘钥并绑定ip以及配置地区和有效期
ip填写你自己的harbor安装位置服务器的ip,如有ip对应的域名也可填域名,本篇未设域名仅用ip配置

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

在这里插入图片描述

4. 移动证书位置

将证书秘钥移动到我们前面创建的certs文件夹中

mv ca* /harbor/certs

这里是将ca开头的文件移动到指定位置,如ca开头的文件还有别的,可写证书文件的全称来移动文件
在这里插入图片描述

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-02 20:28:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-02 20:28:01       100 阅读
  3. 在Django里面运行非项目文件

    2024-02-02 20:28:01       82 阅读
  4. Python语言-面向对象

    2024-02-02 20:28:01       91 阅读

热门阅读

  1. 如何获取时间戳

    2024-02-02 20:28:01       50 阅读
  2. 浏览器唯一标识(浏览器指纹)fingerprintjs

    2024-02-02 20:28:01       49 阅读
  3. C#实现windows系统重启、关机

    2024-02-02 20:28:01       56 阅读
  4. C# 发送邮件

    2024-02-02 20:28:01       57 阅读
  5. 《Vite 基础知识》基于 Vite 的组件库框架搭建

    2024-02-02 20:28:01       58 阅读
  6. c语言 ceil() 函数

    2024-02-02 20:28:01       55 阅读
  7. 跨域访问支持(Spring Boot、Nginx、浏览器)

    2024-02-02 20:28:01       57 阅读
  8. 手写实现call、apply和bind函数

    2024-02-02 20:28:01       49 阅读
  9. Unity之延迟函数

    2024-02-02 20:28:01       63 阅读