Переменные задают в Pod spec через env или envFrom, используя явные значения, ConfigMap и Secret. Разные окружения получают отдельные конфигурации через namespaces, Helm values или overlays.
Как в Kubernetes задавать переменные окружения для контейнеров и как организовать разные значения этих переменных для разных окружений одного приложения?
Переменные задают в 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.