Еще один вопрос о том, как передавать переменные env. Задача, которую я пытаюсь решить: у меня есть задание Дженкинса, которое проверяет код из репозитория git, запускает сборку докера и команды запуска докера. Мне нужно передать переменные env в эту команду запуска. Предпочтительно с помощью файла env, но в качестве отдельных переменных будет нормально. Вот моя работа Дженкинса:
cp WL/${stageid}/env_settings.env ./env_settings.env
ls
docker build \
-t customer_front${stagePrefix} .
docker stop customer_front${stagePrefix} || true && docker rm customer_front${stagePrefix} || true
#source env_settings.env
docker run \
-d --restart unless-stopped \
-e CLIENT_URL='https://test.customer.app' \
-e SITE_NAME='My best site' \
--name customer_front${stagePrefix} \
-p ${externalPort}:3000 \
-e DEFAULT_LOCALE=$DEFAULT_LOCALE \
-e COUNTRY=$COUNTRY \
-e CURRENCY=$CURRENCY \
customer_front${stagePrefix}
Я попытался передать переменные в качестве параметров команды запуска, я попытался сохранить переменные в env_settings.env
файл, а затем передайте его с --env-file
вариант. Оба варианта не сработали.
Единственное, что сработало, - это объявить args в файле dockerfile, затем объявить env vars в файле dockerfile и передать их в команде сборки, но этот вариант мне не подходит. Может быть, у кого-то была такая же проблема и он знает, как ее решить?