我正在尝试将一个示例应用程序推送到Knative,但是我遇到了以下错误消息:
Revision "..." failed with message: Unable to fetch image "...": unsupported status code 401; body: Not Authorized
Knative在EC2上设置正确,我已经创建了一个服务帐户和密钥来从ECR中拉出。我遗漏了什么?我不确定为什么Knative不能访问我的私有AWS存储库,即使K8s (不是Knative)可以访问。
秘诀:
apiVersion: v1
kind: Secret
metadata:
name: registry-push-secret
annotations:
build.knative.dev/docker-0: https://....
type: kubernetes.io/basic-auth
stringData:
username: token
password: <token_value>Knative Secret:
kubectl create secret docker-registry secret-name --docker-server=https://... --docker-username=token --docker-password=<token_value>服务帐户:
apiVersion: v1
kind: ServiceAccount
metadata:
name: test-sa
secrets:
- name: registry-push-secret
imagePullSecrets:
- name: secret-nameKnative配置:
apiVersion: serving.knative.dev/v1alpha1
kind: Service
metadata:
name: test
namespace: default
spec:
runLatest:
configuration:
revisionTemplate:
spec:
serviceAccountName: test-sa
container:
image: ...
imagePullPolicy: Always
env:
- name: TARGET
value: "..."发布于 2020-01-03 07:09:35
对于任何遇到这种情况的人来说,它最终都在Github问题中得到了解决:https://github.com/knative/serving/issues/1996
https://stackoverflow.com/questions/55971277
复制相似问题