sce*_*eee 11 kubernetes google-kubernetes-engine kubernetes-secrets
我有一个私人注册表 (gitlab),我的 docker 图像存储在其中。对于部署,会创建一个密钥,允许 GKE 访问注册表。秘密被称为deploy-secret。密钥的登录信息在注册表中很短的时间后就会过期。
我还创建了第二个永久机密,允许访问 docker 注册表,名为permanent-secret.
是否可以用两个秘密指定 Pod?例如:
apiVersion: v1
kind: Pod
metadata:
name: private-reg
spec:
containers:
- name: private-reg-container
image: <your-private-image>
imagePullSecrets:
- name: deploy-secret
- name: permanent-secret
Run Code Online (Sandbox Code Playgroud)
Kubernetes 在稍后尝试重新拉取镜像时,是否会识别出第一个秘密不起作用(不允许对私有注册表进行身份验证),然后成功回退到第二个秘密?
coo*_*ugh 13
令人惊讶的是,这有效!我刚刚在我的集群上试过这个。我用错误的值添加了一个虚假的注册表凭据密钥。我像您一样(如下)将这两个秘密都放在了我的 yaml 中,然后创建了 pod,并创建了容器并成功运行:
apiVersion: apps/v1
kind: Deployment
metadata:
name: test
labels:
app: test
spec:
replicas: 1
selector:
matchLabels:
app: test
template:
metadata:
labels:
app: test
spec:
nodeSelector:
containers:
- image: gitlab.myapp.com/my-image:tag
name: test
ports:
- containerPort: 80
imagePullSecrets:
- name: regcred-test
- name: regcred
Run Code Online (Sandbox Code Playgroud)
这个regcred秘密有正确的值,regcred-test只是一堆胡言乱语。所以我们可以看到它忽略了不正确的秘密。
| 归档时间: |
|
| 查看次数: |
3756 次 |
| 最近记录: |