В моем докер сочинять файла есть динамическое поле, которое я'd, как для создания во время бега. На самом деле это шаблон строки:
environment:
- SERVER_URL:https://0.0.0.0:${PORT}
И я хочу настроить динамически параметра этого "порта"
docker-compose run <service> PORT=443
В документации есть аргументы
набор параметров, полагаю, я могу использовать. Но нет никакой информации, как я могу использовать тех, кто внутри сочинять файла
В докер-сочинять, аргументы доступны и полезны лишь в файла Docker`. Вы можете указать, что вы делаете на уровень вперед, как следующие:
#dockerfile
ARG PORT
ENV SERVER_URL "https://0.0.0.0:$PORT"
Ваш порт может быть установлен в докер-сочинять.в формате YML:
build:
context: .
args:
- PORT=443
Это на самом деле является переменной среды в любом случае. Вы можете пройти через вашу команду, если это подходит к вам:
PORT=443 docker-compose run <service>
#or
docker-compose run <service> -e PORT=443
Вы можете использовать флаг при использовании докер-сочинять построить
docker-compose build --build-arg PRODUCTION=VALUE
В файла Docker вы можете получить производства аргумент
# Dockerfile
ARG PRODUCTION
FROM node:latest
Это возможно, чтобы стек развернуть`
Пример составить файл в разделе Защита окружающей среды:
- MY_VARIABLE_NAME=${MY_VARIABLE_VALUE}
Команда развернуть стек (я побежал от Gitbash в Windows):
MY_VARIABLE_VALUE=some-value docker stack deploy --compose-file compose_file_here stackname
<БР>
Ссылка Увидеть этот пост на GitHub здесь