Ibm cloud 如何将docker hub注册表与部署在VPC Gen2 infra上的IKS一起使用?

Ibm cloud 如何将docker hub注册表与部署在VPC Gen2 infra上的IKS一起使用?,ibm-cloud,Ibm Cloud,我在IBM VPC Gen2基础设施上创建了一个k8s集群。当我部署应用程序时,它无法从docker hub中提取映像。我在犯错误。端口443在VPC基础结构/所有安全组/规则下启用。我找不到任何有助于此的文件。所有文档都在讨论设置IBM注册表,然后将docker映像推送到该注册表 错误 Failed to pull image "metacontrollerio/metacontroller:v1.4.0": rpc error: code = Unknown desc =

我在IBM VPC Gen2基础设施上创建了一个k8s集群。当我部署应用程序时,它无法从docker hub中提取映像。我在犯错误。端口
443
VPC基础结构/所有安全组/规则下启用。我找不到任何有助于此的文件。所有文档都在讨论设置IBM注册表,然后将docker映像推送到该注册表

错误

Failed to pull image "metacontrollerio/metacontroller:v1.4.0": rpc error: code = Unknown desc = failed to pull and unpack image "docker.io/metacontrollerio/metacontroller:v1.4.0": failed to resolve reference "docker.io/metacontrollerio/metacontroller:v1.4.0": failed to do request: Head "https://registry-1.docker.io/v2/metacontrollerio/metacontroller/manifests/v1.4.0": dial tcp 107.23.X.X:443: i/o timeout
部署模式

在kustomize的帮助下使用CLI部署

---
apiVersion: apps/v1
kind: StatefulSet
metadata:
  labels:
    app.kubernetes.io/name: metacontroller
  name: metacontroller
  namespace: metacontroller
spec:
  replicas: 1
  selector:
    matchLabels:
      app.kubernetes.io/name: metacontroller
  serviceName: ""
  template:
    metadata:
      labels:
        app.kubernetes.io/name: metacontroller
    spec:
      serviceAccountName: metacontroller
      containers:
      - name: metacontroller
        image: metacontrollerio/metacontroller:v1.4.0
        command: ["/usr/bin/metacontroller"]
        args:
        - --logtostderr
        - -v=4
        - --discovery-interval=20s
  volumeClaimTemplates: []

元控制器yaml文件

---
apiVersion: apps/v1
kind: StatefulSet
metadata:
  labels:
    app.kubernetes.io/name: metacontroller
  name: metacontroller
  namespace: metacontroller
spec:
  replicas: 1
  selector:
    matchLabels:
      app.kubernetes.io/name: metacontroller
  serviceName: ""
  template:
    metadata:
      labels:
        app.kubernetes.io/name: metacontroller
    spec:
      serviceAccountName: metacontroller
      containers:
      - name: metacontroller
        image: metacontrollerio/metacontroller:v1.4.0
        command: ["/usr/bin/metacontroller"]
        args:
        - --logtostderr
        - -v=4
        - --discovery-interval=20s
  volumeClaimTemplates: []

请帮忙

  • 转到
    https://cloud.ibm.com/vpc-ext/network/subnet
  • 选择您的专有网络
  • 启用
    公共网关(下角)
    以允许工作节点访问公共internet

  • 添加更多细节。从哪里执行拉?那台机器能进入Dockerhub吗?ping能用吗?顺便说一句:对于Kubernetes,有关于启用Dockerhub的文档:
    pull
    正在从工作节点执行请求。我看不到任何连接到工作节点的公共ip。有没有办法通过ssh连接到工作节点?编辑:当然,我会查看文档。工作节点不需要公共IP。您正在从那里打开连接。但是否启用了出站流量?启用了哪些规则?是,为
    端口:全部、目标类型:任何、目标:0.0.0.0/0启用了出站流量
    我必须在这里启用流量
    专有网络基础设施/专有网络的所有安全组/security\u group\u name
    。对吗?