Передать аргумент в докер сочинять

В моем докер сочинять файла есть динамическое поле, которое я'd, как для создания во время бега. На самом деле это шаблон строки:

environment:
    - SERVER_URL:https://0.0.0.0:${PORT}

И я хочу настроить динамически параметра этого "порта"

docker-compose run <service> PORT=443

В документации есть аргументы набор параметров, полагаю, я могу использовать. Но нет никакой информации, как я могу использовать тех, кто внутри сочинять файла

Комментарии к вопросу (4)

В докер-сочинять, аргументы доступны и полезны лишь в файла Docker`. Вы можете указать, что вы делаете на уровень вперед, как следующие:

#dockerfile
ARG PORT
ENV SERVER_URL "https://0.0.0.0:$PORT"

Ваш порт может быть установлен в докер-сочинять.в формате YML:

build:
  context: .
  args:
    - PORT=443

Это на самом деле является переменной среды в любом случае. Вы можете пройти через вашу команду, если это подходит к вам:

PORT=443 docker-compose run 
#or
docker-compose run  -e PORT=443
Комментарии (2)

Вы можете использовать флаг при использовании докер-сочинять построить

docker-compose build --build-arg PRODUCTION=VALUE

В файла Docker вы можете получить производства аргумент

# Dockerfile
ARG PRODUCTION
FROM node:latest
Комментарии (0)

Увидеть этот ответить. Вы можете сделать это так: порт=433 докер-сочинять на <команда>

Вы даже можете предоставить несколько значений: порт=433 на сайте myip=&#39;192.168.123.456&#39; докер-сочинять <команда>

Комментарии (0)

Это возможно, чтобы стек развернуть`

Пример составить файл в разделе Защита окружающей среды:

- MY_VARIABLE_NAME=${MY_VARIABLE_VALUE}

Команда развернуть стек (я побежал от Gitbash в Windows):

MY_VARIABLE_VALUE=some-value docker stack deploy --compose-file compose_file_here stackname

<БР>

Ссылка Увидеть этот пост на GitHub здесь

Комментарии (0)