OpenShift - переменные среды внешней базы данных - PullRequest
0 голосов
/ 26 октября 2019

Это документация по переменным среды внешней базы данных . В нем говорится:

Использование внешнего сервиса в вашем приложении аналогично использованию внутреннего сервиса. Вашему приложению будут назначены переменные среды для службы и дополнительные переменные среды с учетными данными, описанными в предыдущем шаге. Например, контейнер MySQL получает следующие переменные среды:

EXTERNAL_MYSQL_SERVICE_SERVICE_HOST=<ip_address>

EXTERNAL_MYSQL_SERVICE_SERVICE_PORT=<port_number>

MYSQL_USERNAME=<mysql_username>

MYSQL_PASSWORD=<mysql_password>

MYSQL_DATABASE_NAME=<mysql_database>

Эта часть не ясна - Вашему приложению будут назначены переменные среды для службы .

Как приложение должно быть сконфигурировано так, чтобы назначались переменные среды для службы ? Я понимаю, что те, которые определены в DeploymentConfig, будут поступать в приложение, скажем, в NodeJS как process.env.MYSQL_USERNAME, и т. Д. Мне не ясно, как EXTERNAL_MYSQL_SERVICE_SERVICE_HOST или EXTERNAL_MYSQL_SERVICE_SERVICE_PORT будут поступать.

1 Ответ

2 голосов
/ 28 октября 2019

Из Step 1 ссылки, которую вы разместили, если вы создаете объект службы

oc expose deploymentconfig/<name>

. Это автоматически сгенерирует переменные среды (https://docs.openshift.com/container-platform/3.11/dev_guide/environment_variables.html#automatically-added-environment-variables) для всех модулей в вашем пространстве имен. (Переменные среды могут быть недоступны сразу, если Служба была добавлена ​​ после ваши модули уже были созданы ... удалите модули, чтобы добавить их при перезапуске)

...