刚开始完k8s,总会遇到很多坑,因为是开源项目,版本总在更新,所以要时刻关注自己使用的版本有哪些不一样的命令和参数。

本次采坑是想让k8s可以在建立pod时可以到私库中拉取镜像。根据官网或网上资料,可以通过创建secret记录私库鉴权信息。具体做法如下:

首先在其中一个node上登录私有仓库(docker 访问私库的配置,这里不做描述)

docker login my.registry

登录成功后会在/root/.docker目录下生产config.json文件,然后执行如下命令:

cat /root/.docker/config.json | base64 -w 0

该命令会将你的认证信息通过base64编码,生成一个编码之后的字符串。

在kubernetes中的master节点中创建secret.yaml:

apiVersion: v1

kind: Secret

metadata:

name: myregistrykey

type: kubernetes.io/dockercfg

data:

.dockercfg: ewoJImF1dGhzIjogewoJCSJidXMuZ2EiOiB7CgkJCSJhdXRoIjogIllXUnRhVzQ2WVdSdGFXNHhOVGszTlRNPSIKCQl9Cgl9Cn0=

在kubernetes中的master节点创建secret:

kubectl create -f secret.yaml

查看secret是否创建:

kubectl get secret

之后在创建其他元素的时候指定:imagesPullSecrets即可。

例如:

pod:

apiVersion: v1

kind: Pod

metadata:

name: redis-test

containers:

name: redis-test

image: my.registry/redis

imagePullSecrets:

name: myregistrykey

至此是网上和官网提供的可以让k8s启动pod时访问私库的方法。

很多人也是可以使用,但由于k8s一直在更新版本,网上很多资料都是建立在旧版本基础上进行验证,在新版本中一些参数有变更。

本次采坑就是在于编辑secret元素时type和date参数有变动,从k8s 1.8之后,kubernetes.io/dockercfg就变成kubernetes.io/dockerconfigjson,相对应 .dockercfg也变成.dockerconfigjson,所以在使用k8s 1.8以后版本创建secret时,元素要变成如下:

apiVersion: v1

kind: Secret

metadata:

name: myregistrykey

data:

.dockerconfigjson: ewoJImF1dGhzIjogewoJCSJidXMuZ2EiOiB7CgkJCSJhdXRoIjogIllXUnRhVzQ2WVdSdGFXNHhOVGszTlRNPSIKCQl9Cgl9Cn0=

type: kubernetes.io/dockerconfigjson

不然在创建完secret后,pod启动会报需要验证或者找不到镜像的错误,而无法正常使用镜像。

dockerfile拉取私库镜像_关于kubernetes拉取私库镜像需要注意的点相关推荐

  1. python第三方库全部_自动更新Python所有第三方库

    一般python用得比较久以后,就会安装很多第三方的库.比如这是我的pip list情况: pip list 而且一屏还显示不完. 通过如下命令可以看到需要更新的第三方库: pip list -o 需 ...

  2. jar构建docker镜像_将jar包打包为docker镜像

    本文主要讲如何将一个jar包打包成一个docker镜像,并运行起来,这里我以metabase.jar为例,这个jar包可以直接使用下面命令进行运行: java -jar metabase.jar 接下 ...

  3. 猫眼电影票房爬取到MySQL中_爬虫之爬取猫眼电影专业版实时数据排行榜

    猫眼电影专业版实时数据排行榜是个持续更新的用ajax写成的网站,一般而言,爬取它比较麻烦,需要使用ajax/js进行爬取,python中的requests库可以获取网站的ajax,再通过json库解析 ...

  4. python 爬取链家数据_用python爬取链家网的二手房信息

    题外话:这几天用python做题,算是有头有尾地完成了.这两天会抽空把我的思路和方法,还有代码贴出来,供python的初学者参考.我python的实战经历不多,所以代码也是简单易懂的那种.当然过程中还 ...

  5. automake生成静态库文件_动手 | 奶奶级的动态库入门

    程序编译过程 库文件 静态链接和动态链接的区别? 从0开始 - 创建和使用静态链接库 创建静态库项目 向静态库中添加文件 编译静态库 创建引用静态库的C++控制台应用 在应用中使用静态库功能 从0开始 ...

  6. 取模运算性质_求余、取模运算在RTOS中计算优先级的理解

    uCOS3中的部分源码: /* 置位优先级表中相应的位 */ void OS_PrioInsert (OS_PRIO prio) { CPU_DATA bit; CPU_DATA bit_nbr; O ...

  7. 元件库导入_最新版字体图标元件库分享,一套绝佳的矢量字体图标元件库

    这次分享的FontAwesome v5字体图标元件库,是根据官方的最新版本v5.7.2整理完成的,包含了更全面的图标类型和丰富的图标数量,相信可以满足大多数同学在原型设计中的使用需求. FontAwe ...

  8. python爬取国家男女比例_用python爬取3万多条评论,看韩国人如何评价韩国电影《寄生虫》?...

    用python爬取3万多条评论,看韩国人如何评价韩国电影<寄生虫>? 朱小五 凹凸数据 大家好,我是朱小五 今天给大家带来一个关于电影的数据分析文章. 别走啊,这次不是豆瓣,也不是猫眼 真 ...

  9. python爬取视频自动播放_介绍一个python视频处理库:moviepy

    处理视频是一个常见的需求.那么在python中如何用代码处理视频呢?最近我无意间发现了一个很好用的python视频处理库moviepy,其使用起来简单易用,而且功能比较强大,这里记录一下分享给大家. ...

  10. Docker的mysql镜像_详解docker下的Mysql镜像的使用方法

    通常初学者学习docker时,不太清楚怎样拉取一个Mysql镜像并使用,今天这篇文章简单介绍一下使用流程. 一.预习一下用到的docker命令: 1.docker images 列出本地主机上的镜像. ...

最新文章

  1. 网络爬虫 --DOM处理XML
  2. 配置BGP本地优先级
  3. 双模sa_2020年5G终端发展展望:NSA/SA双模终端将成市场“主力军”!
  4. C++阶段01笔记01【C++初识(第一个C++程序、注释、变量、常量、关键字、标识符命名规则)】
  5. MyBatis注意事项
  6. java调用命令行命令_Java命令行界面(第4部分):命令行
  7. 作者:刘岩(1982-),男,泰康保险集团股份有限公司数据信息中心高级工程师、高级主管,中国计算机学会会员...
  8. 一段顺序颠倒能读通的文字_钓鱼也有逻辑顺序,总是钓不到鱼的原因就在这里...
  9. jsp框架html,GUI构建:[jsp风格的框架通常]对由模板生成的HTML代
  10. 中间人攻击利用框架bettercap测试
  11. Java Web开发Session超时设置
  12. Oracle连接pb,PB内置Oracle数据库接口的使用方法
  13. java jsp中文乱码怎么解决_如何解决JSP中文乱码问题
  14. android6最新版本,安卓版“AirDrop”发布,安卓6版本以上都能用!
  15. redis 查看的版本
  16. 60 个 Python 小例子
  17. 欧盟《一般数据保护条例》(GDPR)你需要知道的
  18. Basler|基于OpenCV的Basler相机采集图像程序
  19. 硬件bypass原理介绍
  20. 重磅丨十四五国家信息规划:部署了10项重大任务,10项优先行动(附PDF原文)...

热门文章

  1. 面试突击41:notify是随机唤醒吗?
  2. libsvm 参数以及计算测试点相似度
  3. F5入口IP依据不同的端口实现转发到不同的POOL
  4. 年底换机潮来了,都有哪些手机受欢迎?
  5. 读书笔记-1-《书都不会读,你还想成功?》
  6. cmd创建一个用户并升级成管理员
  7. STM32笔记记录2
  8. flex学习笔记 富文本编辑(一)-RichEditableText
  9. Linux 内存管理之 SLUB分配器(6):slub debug 实例测试
  10. thinkphp 助手函数url不生成https_关于ThinkPHP的一些渗透方式