Даже в обычном Docker вы никогда не сможете обновить контейнер до более нового изображения, не удаляя и не воссоздавая его. Это также невозможно в Kubernetes: список containers
в спецификации pod «не может быть добавлен или удален ... не может быть обновлен», что означает, что вы никогда не сможете изменить изображение на существующем Pod .
В Kubernetes рекомендуется всегда использовать явный тег версии (никогда не latest
или что-либо подобное, которое может измениться) и управлять модулями с помощью развертываний. Когда у вас будет новая сборка, измените спецификацию развертывания, чтобы иметь новый тег. Kubernetes заметит, что новое развертывание отличается от старого, и будет по порядку:
- Запустите новый Pod с новым изображением;
- Подождите, пока пройдут проверки работоспособности; и
- Удалить старый Pod.
Это приводит к обновлению без простоев.