1. 使用nfs共享存储搭建的pvc(此次都放在一个vpc下);
  2. harbor使用nodePort方式部署,不使用ssl;
  1. 准备工作:

    • 准备好harbor用的pvc

    • 安装好helm,添加好可用源;

    • 因为使用的nfs创建的pvc,要给足权限,要不数据库的pod创建时会报错;

      chmod -R 777 /data/nfs-harbor/
    • 创建好harbornamespace,以后的所有资源都创建在这个命名空间里(包括harbor用的pvc);

      kubectl create namespace harbor
  2. 下载harbor包:

    #添加harbor的helm仓库
    helm repo add harbor https://helm.goharbor.io #下载最新的harbor包
    helm pull harbor/harbor
  3. 解压tgz包,修改values.yaml文件

    #values.yaml文件很长,只需要修改一部分
    
    expose:
    type: nodePort #修改为nodePort
    tls:
    enabled: false #不使用ssl,修改为false
    ......
    externalURL: http://10.1.129.121:30002 #修改为其中一个node节点的IP+端口,以后harbor使用这个URL访问
    ......
    persistence:
    enabled: true
    resourcePolicy: "keep"
    persistentVolumeClaim:
    registry:
    existingClaim: "nfs-pvc-harbor" #修改为之前创建好的pvc
    storageClass: ""
    subPath: "registry" #修改为对应名字,以后的数据存在此目录中
    accessMode: ReadWriteOnce
    size: 5Gi
    chartmuseum:
    existingClaim: "nfs-pvc-harbor" #修改为之前创建好的pvc
    storageClass: ""
    subPath: "chartmuseum" #修改为对应名字,以后的数据存在此目录中
    accessMode: ReadWriteOnce
    size: 5Gi
    jobservice:
    existingClaim: "nfs-pvc-harbor" #修改为之前创建好的pvc
    storageClass: ""
    subPath: "jobservice" #修改为对应名字,以后的数据存在此目录中
    accessMode: ReadWriteOnce
    size: 1Gi
    database:
    existingClaim: "nfs-pvc-harbor" #修改为之前创建好的pvc
    storageClass: ""
    subPath: "database" #修改为对应名字,以后的数据存在此目录中
    accessMode: ReadWriteOnce
    size: 1Gi
    redis:
    existingClaim: "nfs-pvc-harbor" #修改为之前创建好的pvc
    storageClass: ""
    subPath: "redis" #修改为对应名字,以后的数据存在此目录中
    accessMode: ReadWriteOnce
    size: 1Gi
    trivy:
    existingClaim: "nfs-pvc-harbor" #修改为之前创建好的pvc
    storageClass: ""
    subPath: "trivy" #修改为对应名字,以后的数据存在此目录中
    accessMode: ReadWriteOnce
    size: 5Gi
    ......
  4. 安装harbor

    helm install harbor harbor/harbor -f values.yaml -n harbor
    
    #等一会查看pod创建是否成功,默认密码为admin/Harbor12345
    kubectl get pod -n harbor #使用之前配的URL即可登录harbor页面
  5. 配置harbor镜像仓库: /

    #修改docker添加http为信任仓库
    vim /etc/docker/daemon.json "insecure-registries": ["10.1.129.121:30002"] #重启docker
    systemctl restart docker #配置用户名密码
    docker login 10.1.129.121:30002 #测试推送
    docker push 10.1.129.121:30002/k8s.gcr.io/kube-apiserver:v1.23.1

使用Helm安装harbor的更多相关文章

  1. 通过helm 安装 harbor 不成功问题处理

    helm 安装 harbor 安装不成功处理过程 通过安装脚本 helm install c7n/harbor \ --set expose.ingress.hosts.core=harbor.ls. ...

  2. kubernetes实战(十):k8s使用Helm安装harbor

    1.基本概念 对于复杂的应用中间件,需要设置镜像运行的需求.环境变量,并且需要定制存储.网络等设置,最后设计和编写Deployment.Configmap.Service及Ingress等相关yaml ...

  3. 通过helm搭建Harbor

    文章转载自:http://www.mydlq.club/article/66/ 系统环境: kubernetes 版本:1.20.1 Traefik Ingress 版本:2.4.3 Harbor C ...

  4. 1.在 Kubernetes 在快速安装 Harbor

    网址:https://www.qikqiak.com/post/harbor-quick-install/ 安装 Harbor Harbor 支持多种安装方式,源码目录下面默认有一个安装脚本(make ...

  5. 安装harbor私有镜像仓库

    有朋友安装harbor的过程中遇到很多问题,为此写一篇最简单安装harbor的文档,希望能帮助所有刚开始接触harbor的新手.harbor的架构不做探究. 实验验环境:os --> cento ...

  6. kubernetes包管理工具Helm安装

    helm官方建议使用tls,首先生成证书. openssl genrsa -out ca.key.pem openssl req -key ca.key.pem -new -x509 -days -s ...

  7. kubernetes(k8s) helm安装kafka、zookeeper

    通过helm在k8s上部署kafka.zookeeper 通过helm方法安装 k8s上安装kafka,可以使用helm,将kafka作为一个应用安装.当然这首先要你的k8s支持使用helm安装.he ...

  8. 安装Harbor

    一.安装Harbor 1. Harbor简介 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如安全.标识和管理等,扩展了开源Dock ...

  9. debian8安装harbor

    这里的系统版本是debian8.8,harbor版本为1.1.2. 1.安装docker-ce 1.1.Install packages to allow apt to use a repositor ...

随机推荐

  1. T-SQL的存储过程

    1.简介 存储过程可以说是一个记录集,它是由一些T-SQL语句组成的代码块,这些T-SQL语句代码像一个方法一样实现一些功能(对单表或多表的增删改查),然后再给这个代码块取一个名字,在用到这个功能的时 ...

  2. vue学习3-VSCode添加自定义代码片段

    1. ctrl+shift+p:打开命令行窗口. 2. 搜索snippets关键字.选择Preferenece:Configure User Snippets 3. 选择html.json,打开这个文 ...

  3. gin使用BasicAuth中间件

    package mainimport ( "github.com/gin-gonic/gin" "net/http")// 模拟一些私人数据var secret ...

  4. IoC容器-Bean管理注解方式(完全注解开发)

    完全注解开发 (1)创建配置类,替代xml配置文件 (2)编写测试类 在实际中一般用springboot做

  5. SuperPoint: Self-Supervised Interest Point Detection and Description 论文笔记

    Introduction 这篇文章设计了一种自监督网络框架,能够同时提取特征点的位置以及描述子.相比于patch-based方法,本文提出的算法能够在原始图像提取到像素级精度的特征点的位置及其描述子. ...

  6. Django之ajax(jquery)封装(包含 将 csrftoken 写入请求头方法)

    由于支持问题,未使用 es6 语法 _ajax.js /** * 发起请求 * @param url 请求地址 * @param data 请求数据 { } json格式 * @param type ...

  7. Java枚举类在生产环境中的使用方式

    前言   Java枚举在项目中使用非常普遍,许多人在做项目时,一定会遇到要维护某些业务场景状态的时候,往往会定义一个常量类,然后添加业务场景相关的状态常量.但实际上,生产环境的项目中业务状态的定义大部 ...

  8. 如何在pyqt中给无边框窗口添加DWM环绕阴影

    前言 在之前的博客<如何在pyqt中通过调用SetWindowCompositionAttribute实现Win10亚克力效果>中,我们实现了窗口的亚克力效果,同时也用SetWindowC ...

  9. springboot实战小项目-简要介绍、vue项目创建

    因为菜,所以要好好学习! 一.项目介绍:这是一个后台管理系统,准备实现的功能: 1.登录.注册.个人信息查看.退出登录 2.根据关键字查询用户.新增用户.根据id或者其他字段排序.编辑用户信息.删除用 ...

  10. 2020-9-29 T3

    题意:给定一颗大小为 \(n(n \le 5 \times 10 ^ 4)\) 的树,保证树的生成方式随机,你需要选定两个点 \(x, y\),最小化: \[\sum\limits_{i = 1} ^ ...