Я использую kubernetes ConfigMap, который содержит конфигурации базы данных для приложения, и есть секрет, который имеет пароль базы данных.Мне нужно использовать этот секрет в ConfigMap, поэтому, когда я пытаюсь добавить переменную среды в ConfigMap и указать значение в развертывании модуля из секрета, я не могу подключиться к mysql с паролем, поскольку значения в ConfigMap занялиточная строка переменной.
apiVersion: v1
kind: ConfigMap
metadata:
name: config
data:
APP_CONFIG: |
port: 8080
databases:
default:
connector: mysql
host: "mysql"
port: "3306"
user: "root"
password: "$DB_PASSWORD"
и deploy.yaml
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: app
labels:
app: backend
spec:
replicas: 1
template:
metadata:
labels:
app: backend
spec:
containers:
- name: app
image: simple-app-image
ports:
- name: "8080"
containerPort: 8080
env:
- name: APP_CONFIG
valueFrom:
configMapKeyRef:
name: config
key: APP_CONFIG
- name: DB_PASSWORD
valueFrom:
secretKeyRef:
name: "mysql-secret"
key: "mysql-root-password"
Примечание: секрет существует, и я могу получить значение "mysql-root-password" ииспользовать для входа в базу данных