【发布时间】:2020-09-16 10:50:15
【问题描述】:
我在 GitHub 中创建了一个 sample Node.js project 并为其创建了一个 docker 映像。我将 docker 映像作为一个包上传到同一个存储库中。这是一个公共回购。我创建了一个 kubernetes 配置 yaml 文件,将此图像用作 pod 图像。以下是yaml文件
apiVersion: apps/v1
kind: Deployment
metadata:
name: server-deployment
spec:
selector:
matchLabels:
component: node-server
template:
metadata:
labels:
component: node-server
spec:
containers:
- name: node-server
image: docker.pkg.github.com/lethalbrains/intense_omega/io_service:latest
ports:
- containerPort: 3000
imagePullSecrets:
- name: dockerconfigjson-github-com
---
apiVersion: v1
kind: Service
metadata:
name: server-cluster-ip-service
spec:
selector:
component: node-server
ports:
- port: 3000
targetPort: 3000
---
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: ingress-service
annotations:
kubernetes.io/inress.class: nginx
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
rules:
- http:
paths:
- path: /api/
backend:
serviceName: server-cluster-ip-service
servicePort: 3000
使用 Kubectl 应用此文件并检查 pod 详细信息后,我收到 ImagePullBackOff 错误。
我什至尝试using this option 将 dockerconfigjson 密码与 Github 个人访问令牌一起使用,但仍然是 sam 结果。
编辑:
【问题讨论】:
-
运行
kubectl describe pod查看事件,它会给你一个更详细的错误信息。 -
@coderanger,添加了来自 pod 描述的错误消息
-
你能检查一下你在节点上运行 docker pull 是否有效吗?
-
@hoque,我可以从我的机器上拉出 docker 容器。但是我已经在我的环境中配置了我的 github 访问密钥。所以我在另一台机器上尝试了以下错误 -
no basic auth credentials -
我认为问题在于提供的 imagepullsecrets 。请确保您使用您提供的凭据调用 pull image
标签: docker github kubernetes continuous-integration