kubernetes配置imagePullSecrets秘钥来拉取镜像

这篇具有很好参考价值的文章主要介绍了kubernetes配置imagePullSecrets秘钥来拉取镜像。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

说明

imagePullSecret资源将Secret提供的密码传递给kubelet从而在拉取镜像前完成必要的认证过程,简单说就是你的镜像仓库是私有的,每次拉取是需要认证的。

配置说明

  1. 创建docker-registry类型的Secret对象,并在定义pod资源时明确通过"imagePullSecrets"字段来申明使用哪个私钥去认证;

  2. 创建docker-registry类型的Secret对象,然后把它添加到某个ServiceAccount对象中,使用了这个ServiceAccount对象创建出来的pod就自然而然通过认证获取到镜像;

第一种方式较为常见,简单记录一下。

配置过程

这里创建Secret对象有两种方式,各有千秋。

方式一:通过命令行直接创建Secret

kubectl create secret docker-registry <name> --docker-server=DOCKER_REGISTRY_SERVER --docker-username=DOCKER_USER --docker-password=DOCKER_PASSWORD --docker-email=DOCKER_EMAIL

例子:

kubectl create secret docker-registry video-docker-redistry-key \
    --docker-server=10.3.9.107:5000 \
    --docker-username='gsafety' \
    --docker-password='123456'

查看key

# kubectl get secret
NAME                        TYPE                                  DATA   AGE
default-token-d9phm         kubernetes.io/service-account-token   3      19h
video-docker-redistry-key   kubernetes.io/dockerconfigjson        1      2s

最后在yaml文件中使用这个创建出来的Secret:

apiVersion: v1
kind: Pod
metadata:
  name: foo
  namespace: awesomeapps
spec:
  containers:
    - name: foo
      image: janedoe/awesomeapp:v1
  imagePullSecrets:
    - name: xxx-key

方式二:通过现存的docker认证文件来创建Secret

kubectl create secret generic xxx-key \
    --from-file=.dockerconfigjson=/root/.docker/config.json> \
    --type=kubernetes.io/dockerconfigjson

注意:config.json文件需要在主机上通过docker login 的方式登录后,才会生成。这种方式有一个好处,就是如果有多个镜像仓库,都先存在于一个config.json文件中,然后通过命令打入Secret。文章来源地址https://www.toymoban.com/news/detail-595937.html

到了这里,关于kubernetes配置imagePullSecrets秘钥来拉取镜像的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux下配置Git的SSH秘钥

    第一步:安装git环境 $ apt-get install libcurl4-gnutls-dev libexpat1-dev gettext libz-dev libssl-dev 第二步:配置Git参数 第三步:生成秘钥 然后连按三次空格!! 第四步:查看秘钥并复制到git的web上 将以下内容全部复制到git的web上 大功告成!!

    2024年02月11日
    浏览(48)
  • 手动拉取 Kubernetes kubeadm 使用的容器镜像

    使用kubeadmin 设置 Kubernetes 集群时,会使用一个 init 命令选项来设置 Kubernetes 控制平面。Kubernetes 有许多将在引导集群时使用的容器镜像。 在互联网访问不可靠的环境中,或者当您使用代理服务器时互联网访问受限,或者如果您的 Kubernetes 节点根本没有互联网访问权限,预拉要

    2024年02月13日
    浏览(37)
  • Git/Gitlab添加SSH秘钥与小乌龟配置

    目录 一、Git/Gitlab添加SSH秘钥 二、秘钥添加情况验证 三、小乌龟关联SSH (1)查找是生成sSh秘钥,显示文件夹不存在,可以生成秘钥。 指令:cd ~/.ssh (2)生成秘钥,需要填写git注册邮箱。 指令:ssh-keygen -t rsa -C \\\"xxx@163.com\\\" (3)输入秘钥文件存储路径,参考括号里的路径填写

    2023年04月26日
    浏览(38)
  • mac下用git客户端生成ssh秘钥并配置到souretree进行使用

    一、使用git 生成 ssh 密钥 1、Mac 安装 git 客户端 打开终端,执行命令: 2、执行命令 3、检查是不是已经存在密钥 4、能进去说明已经存在,就删掉文件夹,重新创建 5、生成 SSH 密钥,执行以下命令,并连续 3次 Enter 键即可。 会在.ssh目录下生成 id_rsa 、 id_rsa.pub 两个文件私钥

    2024年02月16日
    浏览(81)
  • 创建k8s deploy yaml文件的imagePullSecrets语句

    镜像仓库是harbor kubectl create secret docker-registry key --docker-server=192.168.0.190 --docker-username=admin --docker-password=Harbor12345

    2024年04月17日
    浏览(37)
  • Kubernetes(K8S)拉取本地镜像部署Pod 实现类似函数/微服务功能(可设置参数并实时调用)

             以两数相加求和为例,在kubernetes集群 拉取本地的镜像 ,实现如下效果:         1.实现两数相加求和         2.可以通过curl 实时调用 , 参数 以GET方式提供,并得到结果。(类似 调用函数 )         需要准备如下的文件。文件名与对应的功能如下所示

    2024年01月20日
    浏览(41)
  • kubernetes部署应用时从harbor拉取镜像失败:repository does not exist or may require ‘docker login‘

    问题描述: kubernetes部署应用时,pod启动失败,通过kubectl describe pod查看失败原因类似下面的错误: Failed to pull image \\\"xxxx/oneapi-2/authtenantserver:15\\\": rpc error: code = Unknown desc = Error response from daemon: pull access denied for xxxx/oneapi-2/authtenantserver, repository does not exist or may require \\\'docker login\\\'

    2024年02月16日
    浏览(53)
  • 在Centos7.9配置SSH无秘钥链接ssh-copy-id报错/usr/bin/ssh-copy-id: ERROR: ssh: 的解决方法

    报错内容如下: 第三句报错内容翻译出来是:无法解析主机名控制器:名称或服务未知 解决方法一: vi /etc/hosts 查看自己的主机名是否有误,和我们所要创建的无秘钥名称是否一致。 解决方法二(适用多数情况): vi  ~/.ssh/known_hosts      进入这个文件把里面创建的所有内容

    2024年02月10日
    浏览(38)
  • Docker拉取并配置Grafana

    Linux下安装Docker请参考:Linux安装Docker /opt/grafana/data目录,准备用来挂载放置grafana的数据 /opt/grafana/plugins目录,准备用来放置grafana的插件 /opt/grafana/config目录,准备用来挂载放置grafana的配置文件 环境变量GF_SECURITY_ADMIN_PASSWORD:指定admin的密码 环境变量GF_INSTALL_PLUGINS:指定启动

    2024年02月11日
    浏览(29)
  • 服务拉取不到Nacos配置?

    今天第一次拉取nacos配置文件踩坑了,总结以下几点 (1: 检查是否有application.yml文件和bootstrap.yml文件 微服务要拉取nacos中管理的配置,并且与本地的application.yml配置合并,才能完成项目启动。 但如果尚未读取application.yml,则获取不到nacos的地址,所以引入了bootstrao.yml这类配置文

    2024年02月11日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包