Как в Kubernetes задавать переменные окружения для контейнеров и как организовать разные значения этих переменных для разных окружений одного приложения?

Переменные задают в Pod spec через env или envFrom, используя явные значения, ConfigMap и Secret. Разные окружения получают отдельные конфигурации через namespaces, Helm values или overlays.

Короткий ответ

Что ответить на собеседовании

Переменные задают в Pod spec через env или envFrom, используя явные значения, ConfigMap и Secret. Разные окружения получают отдельные конфигурации через namespaces, Helm values или overlays.

Подробный разбор

Ответ с пояснениями

Переменные задают в Pod spec через env или envFrom, используя явные значения, ConfigMap и Secret. Разные окружения получают отдельные конфигурации через namespaces, Helm values или overlays.

Образ приложения оставляют одинаковым, а окружение меняют декларативной конфигурацией. Не храните секреты открытым текстом в Git и не считайте Base64 защитой. Значения, переданные как env, обычно считываются при старте контейнера; изменение ConfigMap само по себе не обновляет переменную в уже работающем процессе.

Источник: kubernetes.io.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее