首页 > 其他分享 >在K8S中,请问harbor的secret创建能否直接创建资源清单?

在K8S中,请问harbor的secret创建能否直接创建资源清单?

时间:2024-02-23 09:44:20浏览次数:28  
标签:name harbor 创建 app Secret Harbor secret my

答案:当然可以,在Kubernetes(简称K8S)中,为了允许集群中的Pod能够从Harbor私有仓库拉取镜像,您可以直接通过编写资源清单(YAML文件)来创建一个Secret对象。这个Secret将包含访问Harbor所需的认证信息。以下是一个示例:

apiVersion: v1
kind: Secret
metadata:
  name: harbor-registry-secret # 自定义Secret名称
  namespace: default # 指定namespace,如果需要在特定namespace下使用

type: kubernetes.io/dockerconfigjson # 对于Docker注册表类型的认证信息使用此类型

data:
  .dockerconfigjson: eyJhdXRocyI6IHsiaG9tZWJhcmstbG9jYWw6ODA4MCJ8eyJ1c2VybmFtZSI6ImFkbWluIiwicGFzc3dvcmQiOiIxMjM0NTYiLCJpZGVudGl0eSI6bnVsbCwiYXV0aCI6IlNFUlZFUl9BRERSRVNTIn19 # 这里是base64编码后的.dockerconfigjson内容

# 上面的.base64encodeddockerconfigjson部分应替换为实际的Base64编码内容,例如:
# {"auths": { "<harbor-server>:<port>": { "username": "admin", "password": "123456", "identitytoken": null, "auth": "SERVICETOKEN" } } }
# 其中,"<harbor-server>:<port>" 是 Harbor 的服务器地址和端口,"admin" 和 "123456" 分别是用户名和密码,"SERVICETOKEN" 是服务令牌(如果是使用令牌而非密码的话)

然后,将此 Secret 关联到 Pod 或者 Service Account 中,以便在拉取镜像时使用这些凭据:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-app
spec:
  replicas: 1
  selector:
    matchLabels:
      app: my-app
  template:
    metadata:
      labels:
        app: my-app
    spec:
      containers:
      - name: my-container
        image: harbor.example.com/my-project/my-image:latest
      imagePullSecrets:
      - name: harbor-registry-secret # 引用上面创建的Secret名称

综上所述,请务必要确保将.dockerconfigjson字段中的Base64编码字符串替换为您的Harbor认证信息经过正确Base64编码后的实际内容。

标签:name,harbor,创建,app,Secret,Harbor,secret,my
From: https://www.cnblogs.com/huangjiabobk/p/18028694

相关文章

  • 02. Create Project 创建项目导入素材
    使用版本我因为需要开发微信小游戏,所以使用的是2022.3.8f1c1版本创建项目首先创建一个3D项目,因为后续我们需要学习如何将一个普通的项目升级为URP通用渲染管线安装URP通用渲染管线在PackageManager中搜索Universal,然后安装UniversalRP。2022版本的Unity不需......
  • [设计模式]创建型模式-抽象工厂模式
    简介抽象工厂模式是一种创建型设计模式,它提供了一种创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。抽象工厂模式将一组具有共同主题的单个工厂封装起来,它提供接口用于创建相关或依赖对象的家族,而不需要指定具体的类。抽象工厂模式包含以下几个核心角色:抽象工厂(A......
  • 5 - 设备文件创建
    DeviceFileCreation原文链接我的博客创建字符设备设备文件在上一个小节中,我们知道了如何分配主副设备号,但是到此为止,只是创建主副设备号。并未在/dev目录下创建设备文件。设备文件设备文件可以实现用户空间应用与硬件的通讯。它们并不是普通文件,只是从编程视角来看是一......
  • RAID类型介绍、创建、彻底删除
    目录一、RAID(磁盘阵列)    1.1、概念    1.2、RAID0(条带化存储)    1.3、RAID1(镜像存储)    1.4、RAID5     1.5、RAID6       1.6、RAID1+0(先做镜像,再做条带)    1.7、RAID0+1(先做条带,再做镜像......
  • docker安装部署mysql8以及创建数据库
    mysql安装dockerpullmysql:8.0#创建mysql相关目录mkdir-p/server/data/docker/mysql/master/datadirdockerrun--namemysql-p53306:3306--restart=always--privileged=true\-v/server/data/docker/mysql/master/datadir:/var/lib/mysql\-v/s......
  • 分析kube-apiserver单次创建namespace耗时
    日志输出#业务日志I022022:12:39.14936440965multi_config_multi_clientset.go:63]begintowaitcachesyncI022022:12:39.25046140965multi_config_multi_clientset.go:67]waitcachesyncendI022022:12:39.25644040965multi_config_multi_clientset.go:......
  • idea创建spring项目的时候只有java 21和17
    1.问题我们在用IDEA创建一个spring项目时,发现java版本只能选用java21,java17,导致我们的jdk版本无法选择jdk1.8(我最常用的版本)2.解决参考:idea创建项目的时候只有java21和17原因是spring2在23年11月24日停止维护了,所以通过spring来创建,没有spring2,只有spring3+,最低jdk版本也是1......
  • 银河麒麟桌面版创建_删除本地用户
    1创建本地用户银河麒麟电脑如果涉及多人使用,需要单独的登录用户或需要创建测试账号,可以为创建不同的系统账号我们这里是通过银河麒麟的可视化界面操作来完成,并不需要使用命令来操作1.1打开设置点击开始菜单,点击设置,或者通过快捷键win+i打开设置也是一样的在设置中点击账户会......
  • yarn创建子队列,子队列出现超配的问题
    背景由于业务需求,需要新增一个子队列transfer,总资源:Vcore=192 Mem=320G,队列规划如下: 根据配置文件中的属性,transfer队列的容量为30%。集群总共有192个vcore和320GB内存。对于vcore,最大可分配数量为:vcore_limit=(total_vcore*transfer_queue_capacity)/10......
  • Winform创建仅接收消息的窗口
    internalclassMessageOnlyWindow:NativeWindow{privateconststringWindowName="MessageOnlyWindow";publicLowLevelView(){varcreateParams=newCreateParams{Style=0,ExStyle=0,......