Разрешено ли и используется ли несколькими imagePullSecrets Kubernetes для извлечения изображения из частного реестра?
У меня есть личный реестр (gitlab), где хранятся мои изображения докеров. Для развертывания создается секрет, который позволяет GKE получить доступ к реестру. Секрет называется deploy-secret
, Срок действия секретной информации истекает через некоторое время в реестре.
Я также создал второй постоянный секрет, который позволяет получить доступ к реестру докеров, названный 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
Удастся ли Kubernetes при попытке повторно вытащить образ позднее, что первый секрет не работает (не разрешает аутентификацию в частном реестре), а затем успешно выполнить откат ко второму секрету?
1 ответ
Удивительно, но это работает! Я только что попробовал это на моем кластере. Я добавил фальшивый секретный ключ с неверными значениями. Я поместил оба секрета в свой yaml, как вы сделали (ниже), и стручки были созданы, и контейнер создан и успешно работает:
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
regcred
секрет имеет правильные значения и regcred-test
это просто кучка тарабарщины. Таким образом, мы видим, что он игнорирует неверный секрет.