Подстановки переменных в docker-compose в веб-приложении Azure Docker - PullRequest
0 голосов
/ 11 сентября 2018

У меня есть файл docker-compose, который содержит секрет для моей базы данных.

port: 4466
managementApiSecret: ${DB_SECRET}

Поэтому я хотел бы использовать переменную Docker-Compose (https://docs.docker.com/compose/compose-file/#variable-substitution), чтобы иметь возможность предоставитьмои секреты через переменную окружения вместо моего файла yaml.

Возможно ли вообще использовать переменные "Настройки приложения" в моем экземпляре Docker Azure Linux?

Кажется, он не работаетЯ пробовал использовать синтаксис $ {VAR} и $ VAR, но ни один из них не работал. Я также пытался использовать секреты, содержащие только буквы и цифры.

Заранее спасибо. Frank

1 Ответ

0 голосов
/ 11 сентября 2018

Переменные окружения, которые вам нужны для запуска контейнера (например: вы хотите включить номер сборки в имя контейнера), могут быть добавлены в файл .env в том же каталоге, что и файл docker-compose.yml.

пример файла .env:

DB_SECRET=foo

запустите: docker-compose config и убедитесь, что переменная была заменена значением, которое есть в файле .env

Также, Я рекомендую использовать managementApiSecret:"${DB_SECRET}" (обратите внимание на кавычки вокруг переменной) в вашем файле docker-compose.yml

Возможно, существует особый лазурный способ делиться секретами, но я пока не пробовал.

Если вы хотите передать переменные окружения, которые нужны контейнеру, тогда https://docs.docker.com/compose/compose-file/#env_file - это то, что вам нужно.Эти переменные среды станут частью среды внутри контейнера Docker.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...