Отключите обновление модуля Kubernetes, если дайджест контейнера одинаков, даже если указан другой тег изображения - PullRequest
1 голос
/ 06 января 2020

Допустим, у меня есть изображение foo с тегом v1. Поэтому я развернул его в Kubernetes foo:v1.

. Однако по какой-то причине (например, monoversion в monorepo) я поместил точно такое же изображение в реестр контейнера с тегом v2. И я изменил манифест k8s на foo:v2.

. В этой ситуации я хочу обновить модуль только тогда, когда image digest из v1 и v2 отличаются. Так что в случае foo дайджест такой же, поэтому контейнер с foo:v1 должен продолжать работать.

Возможно ли это? Если да, то как?

Спасибо

1 Ответ

1 голос
/ 06 января 2020

Нет способа обновить tag изображение без перезагрузки модуля. Единственный способ заставить его работать - слишком явно использовать digest вместо тегов.

Так что теперь изображение spe c будет выглядеть так:

spec:
  image: foo@sha256:50cf965a6e08ec5784009d0fccb380fc479826b6e0e65684d9879170a9df8566

Таким образом, ваше изображение не зависит от тегов. Дайджесты можно найти либо по dockerhub, либо с помощью команды docker images --digests <image-name>

...