Подтвердить что ты не робот

Как передать аргументы в docker-compose?

Docker 1.9 позволяет передавать аргументы в файл докеров. См. Ссылку: https://docs.docker.com/engine/reference/builder/#arg

Как я могу передать те же самые исправления в docker-compose.yml?
Приведите пример, если это возможно.

4b9b3361

Ответ 2

Теперь это можно сделать, как docker-compose v2 + как часть объекта build;

Докер-compose.yml

version: '2'
services:
    my_image_name:
        build:
            context: . #current dir as build context
            args:
                var1: 1
                var2: c

См. докеры составляют документы.

В приведенном выше примере "var1" и "var2" будут отправлены в среду сборки.

Примечание: любые переменные env (заданные с помощью блока environment), которые имеют то же имя, что и переменная args, переопределяют эту переменную.

Ответ 3

Теперь docker-compose поддерживает подстановку переменных.

Compose использует значения переменных из среды оболочки, в которой выполняется docker-compose. Например, предположим, что оболочка содержит POSTGRES_VERSION=9.3, и вы поставляете эту конфигурацию в файле docker-compose.yml:

db:
  image: "postgres:${POSTGRES_VERSION}"

Когда вы запускаете docker-compose up с этой конфигурацией, Compose ищет переменную среды POSTGRES_VERSION в оболочке и заменяет ее значение. В этом примере Compose разрешает image до postgres:9.3 перед запуском конфигурации.