Kubernetes -- K8s与Harbor私有项目
一、问题描述
在使用K8s的过程中,Pod需下载镜像,下载镜像过程中大部分场景会去自建的Harbor上下载,在Harbor上,如果项目是公开的话则仅需要输入Harbor的用户名和密码即可,但当Harbor上的项目是私有时,这种方式就不可以了,需要额外配置其它参数。
二、问题解决
1.1 先在服务器上登录 Harbor 仓库
~] docker login -u admin -p Harbor12345 $HARBOR_DOMAIN
1.2 查看登录的秘钥数据
~] cat ~/.docker/config.json
{
"auths": {
"$HARBOR_DOMAIN": {
"auth": "xxtestYWRtasafw9rbTlpam5fUEw8PVs7Lg=="
}
}
}
1.3 对上面出来的数据进行base64加密
~] cat ~/.docker/config.json |base64 -w 0
1.4 创建secret.yaml文件
apiVersion: v1
kind: Secret
metadata:
# secret的名称
name: harbor-secret
# 写创建在哪个名称空间
namespace: $NAMESPACE
type: kubernetes.io/dockerconfigjson
data:
# 值为1.3中生成的密钥
.dockerconfigjson: xxJImF1ddddwoJCSJoYXJib3IuZ2Vuc2VlLmNvbSI6IHsKCQkJImF1dGgiOiAiWVdSdGFXNDZNRzlyYlRscGFtNWZVRXc4UFZzN0xnPT0iCgkJfQoJfQp9
1.5 生成对象
~] kubectl create -f harbor-secret.yaml
本文作者:k-free
本文链接:https://www.cnblogs.com/k-free-bolg/p/16457429.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步