k8s使用私有harbor镜像源

前言

在node上手动执行命令可以正常从harbor拉取镜像,但是用k8s不行,使用kubectl describe pods xxx 提示未授权 unauthorized to access repository。

处理方法

  1. 创建一个secrete资源对象。以下示例中 registry-harbor 为secret资源对象的名称。除了邮箱可以随便填,其它三个需要使用实际的harbor地址和账号。

    kubectl create secret docker-registry registry-harbor
    --docker-server=harbor.interlweb.com
    --docker-username=admin
    --docker-password='Harbor12345'
    --docker-email=foo@bar.com

  2. 在pod的yaml定义文件中使用 imagePullSecrets 引用secret

    apiVersion: apps/v1
    kind: Deployment
    metadata:
    name: deploy-nginx
    spec:
    replicas: 2
    selector:
    matchLabels:
    app: nginx
    env: uat
    template:
    metadata:
    labels:
    app: nginx
    env: uat
    spec:
    containers:
    - name: nginx
    image: harbor.interlweb.com/public/nginx:1.23.3
    ports:
    - containerPort: 80
    imagePullSecrets:
    - name: registry-harbor

  3. 创建pod测试能否正常拉取

    kubectl create -f xxx.yaml

相关推荐
Fate_I_C2 分钟前
Kotlin 内部类和嵌套类
java·开发语言·kotlin
宸津-代码粉碎机23 分钟前
Spring Boot 4.0 实战技巧全解析
java·大数据·spring boot·后端·python
Makoto_Kimur25 分钟前
Java Scanner 的 ACM 常用输入模板
java·数据结构·算法
walkerLing26 分钟前
Docker_Day1
运维·docker·容器
0xDevNull28 分钟前
Spring 核心教程:@Component vs @Bean 深度解析
java·后端
小碗羊肉31 分钟前
【从零开始学Java | 第三十二篇】方法引用(Method Reference)
java·开发语言
满满和米兜37 分钟前
【Java基础】- 集合-HashSet与TreeSet
java·开发语言·算法
网安INF1 小时前
数据结构第二章复习:线性表
java·开发语言·数据结构
aq55356001 小时前
Laravel10.X核心特性全解析
java·开发语言·spring boot·后端