kubernetes从私有镜像仓库拉取镜像

写在前面

这篇https://www.jianshu.com/p/a275fed0bb55
我们部署了一套harbor镜像仓库,作为用户的私有镜像仓库,那么本篇就主要介绍kubernetes从私有镜像仓库拉取镜像的方法。

  1. 提前拉取镜像
  2. 在节点上配置对私有镜像仓库的认证
  3. POD上配置imageSecret

提前拉取镜像

就是提前把镜像docker pull 也好,docker load也好,现在节点上准备好,基本等于废话。。。。

在节点上配置对私有镜像仓库的认证

第二个方法,在节点上配置对私有镜像仓库的认证,这个是说,我们执行docker login {registry_ip} 这个命令,就是把登录信息记录到~/.docker/config.json这个文件中了,我们生成一次这个文件,然后把这个文件拷贝到所有节点上去,相当于免密了。

{
    "auths": {
        "172.18.11.18": {
            "auth": "YWRtaW46MTIzNDU2NzgK"
        }
    },
    "HttpHeaders": {
        "User-Agent": "Docker-Client/18.06.1-ce (linux)"
    }
}

如上,那个auth的内容其实就是{}用户名:密码}然后base64一下。如此,在所有节点上就可以直接pull私有镜像仓库了

POD上配置imageSecret

第三种,也是最常用的一种,就是kubernetes支持一种image拉取的时候呢,传入一个secret的认证信息,由kubernetes来完成验证,从而拉取镜像。
步骤也很简单,首先我们先生成一个secret:

kubectl create secret docker-registry myregistrykey   --docker-server=https://172.18.11.18   --docker-username=admin  --docker-password=12345678 --docker-email=beiertiao@me.com

其中docker-registry为secret的类型
--docker-server、--docker-username、docker-password必填,email选填。
如此生成了一个secret(默认namespace为default),然后在pod中写入一个imagePullSecret就好了。

...
spec:
    template:
        spec:
            containers:
            - imagePullSecrets
                - name: myregistrykey

以上↑

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 引言   前一篇文章详细描述了如何使用rancher搭建Kubernetes高可用集群,集群搭建好了后,我们就需要...
    Statmoon阅读 8,468评论 0 4
  • 排错指南 - Pod 本文档介绍 Pod 的异常状态,可能原因和解决办法。 排查 Pod 异常的常用命令如下: 查...
    小孩子的童话2014阅读 7,229评论 0 2
  • 细数回忆, 漫步在灯火阑珊处 拾起岁月留下的痕迹, 再回望过去,已然物是人非。 萧萧落叶,往事亦随风飘逝。 这岁月...
    暖桐华阅读 235评论 0 3
  • 最近项目紧下班回来都挺晚的,断断续续画了一星期,每天画一点。时间都是挤出来,还好做自己喜欢的事不觉累。 工具:红辉...
    木兰手绘阅读 2,661评论 4 25

友情链接更多精彩内容