[英]How do I pull a Github (ghcr.io) from Minikube?
我跑
docker pull ghcr.io/.../test-service
一切正常,但是,當我嘗試在部署中使用它並將部署應用於 Minikube 實例時,我得到...
Warning Failed 14s (x4 over 93s) kubelet Error: ErrImagePull
Normal BackOff 1s (x6 over 92s) kubelet Back-off pulling image "ghcr.io/.../test-service:latest"
Warning Failed 1s (x6 over 92s) kubelet Error: ImagePullBackOff
如何配置 Minikube 以使用我的 Github PAT?
我的部署看起來像這樣......
apiVersion: apps/v1
kind: Deployment
metadata:
name: test-app
namespace: foo
spec:
replicas: 1
selector:
matchLabels:
app: test-app
version: v1
template:
metadata:
labels:
app: test-app
version: v1
spec:
serviceAccountName: test-app
containers:
- image: ghcr.io/.../test-service:latest
imagePullPolicy: Always
name: test-app
ports:
- containerPort: 8000
這是因為您沒有創建 docker registry secret。 為此,您可以按照https://dev.to/asizikov/using-github-container-registry-with-kubernetes-38fb
另一種更簡單的方法是將 registry-creds 插件添加到 Minikube
$ minikube addons configure registry-creds
# setup ghcr.io with your github username and PAT (Personal Access Token) token
$ minikube addons enable registry-creds
然后您可以將 github 容器注冊表 creds 稱為dpr-secret
,如下面的部署示例所示
# deployment.yml
apiVersion: apps/v1
kind: Deployment
metadata:
name: b2b-integration-api
labels:
app: api-app
namespace: default
spec:
template:
metadata:
name: b2b-integration-api-pods
labels:
app: api-app
tier: api-layer
spec:
containers:
- name: b2b-integration-api
image: ghcr.io/<your github user or org>/<image>:<version>
imagePullPolicy: IfNotPresent
ports:
- containerPort: 80
imagePullSecrets:
- name: dpr-secret
replicas: 2
selector:
matchLabels:
tier: api-layer
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.