Py学习  »  Git

无法将私有包/映像从GitHub容器注册表拉入Okteto Kubernetes

Michael • 3 年前 • 1496 次点击  

我希望可以征求你的意见。

简而言之,问题是:我的管道无法从GHCR中提取私人图像。IO变成了Okteto Kubernetes,但来自同一私人回购协议的公开图像。

我在Windows 10上使用WSL2 Ubuntu20.04 LTS和kinD for development,并尝试了minikube。

我在Okto中发现一个错误,它说图像拉取是未经授权的->拉回。

我做的事情:浏览堆栈溢出、RTFM、Okteto FAQ、下载Okteto kubeconfig、拔出头发,花了比我想承认的更多的时间,但仍然没有成功。

无论出于什么原因,我都无法创造一个行之有效的“库贝特秘密”。当登录到ghcr时。io通过——docker登录——用户名——我可以在本地提取私人图像。

无论我尝试了什么,当我试图在Okteo中提取私人图像时,仍然会出现未经授权的错误。

我的设置和最新更新:

  • Windows 10 Pro
  • 喷气式飞机驾驶员
  • WSL2 Ubuntu 20.04 LTS
  • ASP。NET核心MVC应用程序
  • .NET 6 SDK
  • 码头工人
  • 友善的
  • 巧克力味
  • 自制的

设置类型

kind create cluster --name my-name

kubectl create my-namespace

// create a secret to pull images from ghcr.io       
kubectl create secret docker-registry my-secret -n my-namespace --docker-username="my-username" --docker-password="my-password" --docker-email="my-email" --docker-server="https://ghcr.io"

// patch local service account
kubectl patch serviceaccount default -p '{"imagePullSecrets": [{"name": "my-secret"}]}'

库伯内特斯。亚马尔

apiVersion: apps/v1
kind: Deployment
metadata:
  name: okteto-repo
  namespace: my-namespace
spec:
  replicas: 1
  selector:
    matchLabels:
      app: okteto-repo
  template:
    metadata:
      labels:
        app: okteto-repo
    spec:
      containers:
        - name: okteto-repo
          image: ghcr.io/user/okteto-repo:latest
          ports:
            - containerPort: 80
      imagePullSecrets:
        - name: my-secret
---
apiVersion: v1
kind: Service
metadata:
  name: okteto-repo
  annotations:
    dev.okteto.com/auto-ingress: "true"
spec:
  type: ClusterIP
  selector:
    app: okteto-repo
  ports:
    - protocol: TCP
      port: 8080
      targetPort: 80

你知道为什么不行吗?我能做什么?

非常感谢我亲爱的朋友们,非常感谢你们的每一个意见!

希望你们假期愉快。

干杯 迈克尔

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/129434
 
1496 次点击  
文章 [ 1 ]  |  最新文章 3 年前