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

相关推荐
木棉软糖12 分钟前
一个MySQL的数据表最多能够存多少的数据?
java
程序视点40 分钟前
Java BigDecimal详解:小数精确计算、使用方法与常见问题解决方案
java·后端
愿你天黑有灯下雨有伞1 小时前
Spring Boot SSE实战:SseEmitter实现多客户端事件广播与心跳保活
java·spring boot·spring
Java初学者小白1 小时前
秋招Day20 - 微服务
java
狐小粟同学2 小时前
JavaEE--3.多线程
java·开发语言·java-ee
KNeeg_3 小时前
Spring循环依赖以及三个级别缓存
java·spring·缓存
Johny_Zhao3 小时前
CentOS Stream 9上部署FTP应用服务的两种方法(传统安装和docker-compose)
linux·网络安全·信息安全·kubernetes·云计算·containerd·ftp·yum源·系统运维
鼠鼠我捏,要死了捏3 小时前
多租户Kubernetes集群架构设计实践——隔离、安全与弹性扩缩容
kubernetes·architecture·multi-tenancy
AI_Gump4 小时前
【AI阅读】20250717阅读输入
java·spring boot·spring
ldj20204 小时前
Docker的docker-compose类比Spring的ApplicationContext
spring·docker