Назад к вопросам
СБЕР
Senior
3
Как настроить переменные окружения в Spring Boot через Kubernetes (ConfigMap/Secrets)?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
В Kubernetes для передачи конфигурационных данных и секретов в Spring Boot приложение обычно используют ConfigMap и Secrets, которые монтируются как переменные окружения.
Чтобы настроить переменные окружения через ConfigMap/Secrets, нужно:
- Создать ConfigMap или Secret с нужными ключами и значениями.
Пример ConfigMap:
apiVersion: v1
kind: ConfigMap
metadata:
name: app-config
data:
SPRING_DATASOURCE_URL: jdbc:mysql://db:3306/mydb
SPRING_DATASOURCE_USERNAME: user
- В манифесте Deployment добавить эти данные в контейнер как переменные окружения:
apiVersion: apps/v1
kind: Deployment
metadata:
name: spring-app
spec:
template:
spec:
containers:
- name: app
image: my-spring-app:latest
envFrom:
- configMapRef:
name: app-config
- secretRef:
name: app-secrets
- В Spring Boot приложение переменные окружения автоматически подхватываются благодаря соглашению имен (например,
SPRING_DATASOURCE_URLсоответствует свойствуspring.datasource.url).
Таким образом, можно централизованно управлять конфигурацией и секретами вне образа приложения, что удобно для разных сред и безопасно для чувствительных данных.