k8s拉取私有镜像的2种方式

news/2025/3/22 11:49:05/文章来源:https://www.cnblogs.com/HKUI/p/18783799

目录
  • 通过secret
  • 通过ServiceAccount

通过secret

01-image-pull.yaml

kind: Pod
apiVersion: v1
metadata:name: imagepull-nginxlabels:group: imagepull
spec:containers:- name: nginximage: registry.cn-beijing.aliyuncs.com/hkui_dev/nginx
k apply -f  01-image-pull.yaml
[root@master0 tests]# k get po
NAME                                        READY   STATUS             RESTARTS   AGE
dashboard-metrics-scraper-b55fdfbd4-h9mkg   1/1     Running            0          11h
imagepull-nginx                             0/1     ImagePullBackOff   0          24m
kubernetes-dashboard-dfd4dbffb-749lr        1/1     Running            0          11h

查看失败原因

k describe pod imagepull-nginx

image

镜像拉取失败了,没权限

创建secret

k create secret docker-registry aliyun-docker \
--docker-server=registry.cn-beijing.aliyuncs.com \
--docker-username=your_username \
--docker-password=your_passwd
[root@master0 tests]# k get secret
NAME                              TYPE                             DATA   AGE
aliyun-docker                     kubernetes.io/dockerconfigjson   1      11h
kubernetes-dashboard-certs        kubernetes.io/tls                2      42d
kubernetes-dashboard-csrf         Opaque                           1      42d
kubernetes-dashboard-key-holder   Opaque                           2      42d

k explain pod.spec.imagePullSecrets

[root@master0 tests]# k explain pod.spec.imagePullSecrets
KIND:       Pod
VERSION:    v1FIELD: imagePullSecrets <[]LocalObjectReference>DESCRIPTION:ImagePullSecrets is an optional list of references to secrets in the samenamespace to use for pulling any of the images used by this PodSpec. Ifspecified, these secrets will be passed to individual puller implementationsfor them to use. More info:https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-podLocalObjectReference contains enough information to let you locate thereferenced object inside the same namespace.FIELDS:name	<string>Name of the referent. This field is effectively required, but due tobackwards compatibility is allowed to be empty. Instances of this type withan empty value here are almost certainly wrong. More info:https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

修改镜像拉取策略

01-image-pull.yaml

kind: Pod
apiVersion: v1
metadata:name: imagepull-nginxlabels:group: imagepull
spec:imagePullSecrets:- name: aliyun-dockercontainers:- name: nginximage: registry.cn-beijing.aliyuncs.com/hkui_dev/nginx

再去拉取就ok了

通过ServiceAccount

有时直接看到 imagePullSecrets 这个比较明显,让人一眼看出密码相关的信息

可通过ServiceAccount来做

02-imagepull-sa.yaml

apiVersion: v1
kind: ServiceAccount
metadata:name: 02-imagepull-sa
imagePullSecrets:- name: aliyun-docker

k apply -f 02-imagepull-sa.yaml

[root@master0 tests]# k get sa
NAME                   SECRETS   AGE
02-imagepull-sa        0         7h
default                0         42d
kubernetes-dashboard   0         42d

镜像拉取改为

02-imagepull-sa-pod.yaml

apiVersion: v1
kind: Pod
metadata:name: 02-imagepull-sa-pod
spec:serviceAccount: 02-imagepull-sacontainers:- name: nginximage: registry.cn-beijing.aliyuncs.com/hkui_dev/nginx

再应用pod即可

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/902164.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

202110111235 - 软件工程笔记

1. 概述 1.1 开发只占冰山一角 1.2 计算机科学、数学,工程,管理 1.3 软件开发的本质:实现问题域中的概念和处理逻辑 到 运行平台的概念和处理逻辑的映射。系统建模 需求 -> 设计 -> 实现1.4 软件工程的目标:生产具有正确性、可用性、以及开销合宜的产品。 1.5 软件工…

202109060657 - hadoop架构和读写流程

1. 整体架构 hdfs架构zkmonode高可用。HA的工作原理?是否需要每个datanode监听zk?namenodeNameNode(nn):Hdfs集群的管理者,Master 管理Hdfs的名称空间(NameSpace) 维护副本策略 记录文件块(Block)的映射信息 负责处理客户端读写请求datanodeDataNode:NameNode下达命令,…

基于风险的完整性和检查建模(RBIIM)MATLAB仿真

1.程序功能描述 基于风险的完整性和检查建模(Risk-Based Integrity and Inspection Modeling ,RBIIM)MATLAB仿真,对比prior density,posterior perfect inspection,posterior imp inpection,cummulative posterior imperfect inspection四个指标。 2.测试软件版本以及…

202108151156 - kafka消费积压案例

0. 背景 上游厂家生产信令数据,我方消费kafka数据,过滤后插入HBase。 上游生产的信令数据分了4个主题,每个主题有若干分区,这4个主题的数据消费后都插入同一张HBase表。 问题:kafka消息积压达到百亿。 以下以topic1为例,有6个分区。 1. 查看消费滞后情况 kafka-consumer-…

mysql 多表怎么连接的

前言 简单描述一下多表怎么连接的。 正文 首先,我们得抛开我们一些自以为是的想法。 我想过这个问题,就是为什么我们背乘法口诀的时候,我们总是背: 22 = 4, 99=81 这样背下去,似乎这是口诀。然而这是缓存,不是计算,既然不是计算那么就不是逻辑学。 我们理所当然的想9*9…

202108120808 - 类加载器及双亲委派机制

Bootstrap ClassLoader 这是加载器中的大 Boss,任何类的加载行为,都要经它过问。它的作用是加载核心类库,也就是 rt.jar、resources.jar、charsets.jar 等。当然这些 jar 包的路径是可以指定的,-Xbootclasspath 参数可以完成指定操作。 这个加载器是 C++ 编写的,随着 JVM …

keil仿真时导出数据操作

keil仿真时导出数据操作 save D:\savedata.txt 0x20001013,0x20001035

spring-boot-starter-validation

官方提供的注解 spring-boot-starter-validation 是 Spring Boot 提供的一个 starter,是一个用于验证 Java Bean 的标准,它提供了一套注解和相应的运行时 API 来定义和执行校验规则。 具体来说,当你在项目中引入 spring-boot-starter-validation 后,你可以使用一系列预定义…

省选算法复习

省选算法复习 1. 线段树优化建图 当我们需要向区间内所有点连边或者从区间中所有点连到某个点的时候,便可以使用线段树来优化,如果需要从区间每一个点连到另一个区间每一个点的话,加一个虚点就好了。 这不是一个很困难的技巧,关键在于要建模。 P5471 [NOI2019] 弹跳 - 洛谷…

fastadmin订单父子表管理端

fastadmin后台父子表使用方法 发布于 2021-01-22 12:48:10fastadmin后台的所有表格都是支持父子表配置的,只需要简单修改一下对应的JS即可,下面直接进入主题。示例是我的全国省市行政区划表,是从国家统计局网站采集下来的,共五级行政数据,非常适合用来做父子表,按照级别一…

Rudolf and k Bridges

Rudolf and k Bridges 题目 大致题意上图为俯视图 有一个\(nXm\)的网格,下标从\(1-n\) 以及从 \(1-m\),\((i, j)\) 的值就是这个这垂直一格水的深度 现在要安装支架,有几个信息:\((i, 1)\) 和 \((i, m)\) 处必须要安装相邻支架的距离不能超过 \(d\), 相邻距离为 \(abs(j - …

背离Divergence Trading ,贪小便宜

趋势交易(trend trading)和背离交易(divergence trading),代表了两种不同的交易策略。做背离交易相当于赌市场短期失效,承认你比市场聪明,虽然能赚小钱,但往往是亏大钱的根源。 贪小便宜爱背离,贪小便宜(gain small advantages)不爱止损(cut losses),所以背离和不止损…