У меня есть некоторые свойства CATALINA_OPTS (относительно порта базы данных, пользователя и т. Д.), Настроенные в файле ConfigMap. Затем этот файл добавляется в изображение docker через переменную среды Pod. Одним из свойств CATALINA_OPTS является пароль базы данных, и его необходимо переместить из ConfigMap в файл Secrets. Я могу открыть ключ из файла Secrets через переменную окружения:
apiVersion: v1
kind: Pod
...
containers:
- name: myContainer
image: myImage
env:
- name: CATALINA_OPTS
valueFrom:
configMapKeyRef:
name: catalina_opts
key: CATALINA_OPTS
- name: MY_ENV_PASSWORD
valueFrom:
secretKeyRef:
name: db-pass
key: my-pass
Дело в том, что мне нужно добавить этот пароль в CATALINA_OPTS. Я пытался сделать это в Dockerfile:
RUN export CATALINA_OPTS="$CATALINA_OPTS -Dmy.password=$MY_ENV_PASSWORD"
Однако MY_ENV_PASSWORD не добавляется в существующий CATALINA_OPTS. Когда я перечисляю свои переменные окружения (я проверяю журнал в Jenkins), я не вижу пароль. Я что-то здесь не так делаю? Есть ли «обычный» способ сделать это?