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

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

答案:当然可以,在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编码后的实际内容。

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
2月前
|
Kubernetes 关系型数据库 MySQL
|
2月前
|
Kubernetes 应用服务中间件 Linux
k8s--如何将chart包托管至harbor
k8s--如何将chart包托管至harbor
|
2月前
|
Kubernetes 应用服务中间件 nginx
k8s学习--k8s集群使用容器镜像仓库Harbor
本文介绍了在CentOS 7.9环境下部署Harbor容器镜像仓库,并将其集成到Kubernetes集群的过程。环境中包含一台Master节点和两台Node节点,均已部署好K8s集群。首先详细讲述了在Harbor节点上安装Docker和docker-compose,接着通过下载Harbor离线安装包并配置相关参数完成Harbor的部署。随后介绍了如何通过secret和serviceaccount两种方式让Kubernetes集群使用Harbor作为镜像仓库,包括创建secret、配置节点、上传镜像以及创建Pod等步骤。最后验证了Pod能否成功从Harbor拉取镜像运行。
148 0
|
4月前
|
运维 Kubernetes 容器
【Azure K8S】演示修复因AKS密钥过期而导致创建服务不成功的问题(The provided client secret keys for app ****** are expired)
【Azure K8S】演示修复因AKS密钥过期而导致创建服务不成功的问题(The provided client secret keys for app ****** are expired)
【Azure K8S】演示修复因AKS密钥过期而导致创建服务不成功的问题(The provided client secret keys for app ****** are expired)
|
2月前
|
存储 Kubernetes 数据安全/隐私保护
k8s学习--Secret详细解释与应用
Secret 支持四种类型: - **Opaque Secrets**:存储任意类型机密数据,需自行加密。 - **Service Account Token Secrets**:自动管理 API 访问令牌。 - **Docker Registry Secrets**:存储 Docker 私有仓库认证信息。 - **TLS Secrets**:存储 TLS 证书和私钥,用于加密通信。
244 0
|
4月前
|
存储 Kubernetes 数据安全/隐私保护
k8s学习笔记之ConfigMap和Secret
k8s学习笔记之ConfigMap和Secret
|
4月前
|
存储 Kubernetes 安全
在k8S中,Secret 有哪些使用方式?
在k8S中,Secret 有哪些使用方式?
|
4月前
|
Kubernetes 数据安全/隐私保护 容器
Kubernetes(K8S) 配置管理 Secret 介绍
Kubernetes(K8S) 配置管理 Secret 介绍
55 1
|
4月前
|
Prometheus Kubernetes 数据安全/隐私保护
使用kubeseal加密和管理k8s集群的secret
使用kubeseal加密和管理k8s集群的secret
76 2
|
5月前
|
Kubernetes 算法框架/工具 Docker
k8s拉取harbor仓库镜像
k8s拉取harbor仓库镜像
289 5