Ainda uma outra questão sobre como passar variáveis env. A tarefa que eu estou tentando resolver: eu tenho jenkins trabalho de check-out código do repositório git, executar a janela de encaixe construir e janela de encaixe executar comandos. Eu preciso para passar variáveis env para executar este comando. De preferência usando o env arquivo, mas como variáveis única vai ser ok. Aqui é o meu jenkins trabalho:
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}
Eu tentei passar variáveis como executar o comando opções, eu tentei armazenar variáveis na env_settings.env
arquivo e, em seguida, passá-lo com --env-file
opção. Ambas as variantes não funcionou.
A única coisa que funcionou foi a declarar args em dockerfile, em seguida, declarar env vars em dockerfile e passá-los em comandos de compilação, mas esta variante não é adequado para mim. Pode ser alguém teve o mesmo problema e sabe como resolver isso?