当前位置: 首页 > 知识库问答 >
问题:

Kubernetes从多个专用docker注册中心拉取

谭炎彬
2023-03-14
kubectl create secret docker-registry regcred --docker-server=<your-registry-server> --docker-username=<your-name> --docker-password=<your-pword> --docker-email=<your-email>
apiVersion: apps/v1beta1
kind: Deployment
metadata:
  name: foo
spec:
  replicas: {{ .Values.replicaCount }}
  template: 
    spec:
      imagePullSecrets:
      - name: regcred
      containers:
      - name: foo
        image: foo.example.com
apiVersion: apps/v1beta1
kind: Deployment
metadata:
  name: foo
spec:
  replicas: {{ .Values.replicaCount }}
  template: 
    spec:
      containers:
      - name: foo
        image: foo.example.com
        imagePullSecrets:
        - name: foo-secret
      - name: bar
        image: bar.example.com
        imagePullSecrets:
        - name: bar-secret

我尝试创建foo-secretbar-secret两个秘密,并适当地引用每一个,但我发现它无法拉动这两个容器。

共有1个答案

杜砚
2023-03-14

您必须在pod级别直接包含ImagePullSecrets:,但在那里可以有多个秘密。

apiVersion: apps/v1beta1
kind: Deployment
metadata:
  name: foo
spec:
  replicas: {{ .Values.replicaCount }}
  template: 
    spec:
      imagePullSecrets:
      - name: foo-secret
      - name: bar-secret
      containers:
      - name: foo
        image: foo.example.com/foo-image
      - name: bar
        image: bar.example.com/bar-image

Kubernetes在此方面的文档说明:

如果需要访问多个注册表,可以为每个注册表创建一个秘密。Kubelet在为您的Pod提取图像时,会将任何ImagePullSecrets合并到单个虚拟的.docker/config.json中。

 类似资料:
  • 我创建了一个docker映像,并将其推入(标记然后推入)本地不安全的docker-registry v2,该v2运行在192.168.99.100:5000/image/name上。 在VM内部的/var/lib/boot2docker/profile上,我向EXTRA_ARGS添加了标志 。 &从在Docker(VM)中运行良好。 _catalog可以从邮递员:获得注册表中的图像。 我将使用以下

  • Dubbo 支持同一服务向多注册中心同时注册,或者不同服务分别注册到不同的注册中心上去,甚至可以同时引用注册在不同注册中心上的同名服务。另外,注册中心是支持自定义扩展的 1。 多注册中心注册 比如:中文站有些服务来不及在青岛部署,只在杭州部署,而青岛的其它应用需要引用此服务,就可以将服务同时注册到两个注册中心。 <?xml version="1.0" encoding="UTF-8"?> <bea

  • 注册中心配置 首先需要添加并激活注册中心。可以添加多个注册中心,但只能有一个处于激活状态,后面的运行状态功能都是针对当前已激活的注册中心进行操作。 目前提供 Zookeeper 和 etcd 的支持,后续会添加第三方注册中心的支持。 点击 + 按钮可以添加新注册中心。 通过配置扩展配置中心来使用其它配置中心管理配置。 支持编辑、激活和删除注册中心操作。

  • 实现动机 配置集中化:越来越多的运行时实例,使得散落的配置难于管理,配置不同步导致的问题十分严重。将配置集中于配置中心,可以更加有效进行管理。 配置动态化:配置修改后的分发,是配置中心可以提供的另一个重要能力。它可支持数据源和规则的动态切换。 存放运行时的动态/临时状态数据,比如可用的 ShardingSphere 的实例,需要禁用或熔断的数据源等。 提供熔断数据库访问程序对数据库的访问和禁用从库

  • 什么是注册中心?注册中心可以说是微服务架构中的”通讯录“,它记录了服务和服务地址的映射关系。在分布式架构中,服务会注册到这里,当服务需要调用其它服务时,就到这里找到服务的地址,进行调用.比如Seata Client端(TM,RM),发现Seata Server(TC)集群的地址,彼此通信. Seata的注册中心与Dubbo,Spring cloud的注册中心区别是?在广义上来说,并无区别,只不过D

  • 注册中心配置 "Consul": { "ConnectionString": "127.0.0.1:8500",//consul的链接地址,端口 "IsHealthCheck": true//是否进行健康检查 } ketchup.consul 中内置consul 健康检查服务