переменные в Docker Compose |

Есть несколько частей Compose, которые в том или ином смысле имеют дело с переменными среды. Краткие примечания ниже помогут вам понять это и позволят вам понять решение Microsoft для микросервисов (eShopContainer) —

  • Переменная среды указывается в файле компоновки как ${ПЕРЕМНАЯ}
  • Вы можете заменить переменную среды, добавив их в .env или указав путь с помощью —env-файл вариант.
  • Файл .env загружается по умолчанию, передача аргумента —env-file переопределяет путь к файлу по умолчанию.
  • Оба ВАряАБлЕ**анг**ПЕРЕМЕННАЯ** и ** синтаксис поддерживается.
  • ${ПЕРЕМНАЯ:-по умолчанию} принимает значение по умолчанию, если переменная VARIABLE не установлена ​​или пуста в среде.
  • ${ПЕРЕМНАЯ-по умолчанию} принимает значение по умолчанию, только если переменная VARIABLE не установлена ​​в среде.
  • ${ПЕРЕМНАЯ:?ошибка} завершается с сообщением об ошибке, содержащим err, если переменная VARIABLE не установлена ​​или пуста в среде.
  • ${ПЕРЕМНАЯ?ошибка} завершается с сообщением об ошибке, содержащим err, если VARIABLE не установлена ​​в среде.
  • Файл .env помещается в начало каталога проекта.
  • Вы можете убедиться в этом с помощью конвертировать Команда, которая выводит вашу разрешенную конфигурацию приложения на терминал.

Передав файл в качестве аргумента, вы можете хранить его где угодно и называть соответствующим образом, например, .env.ci, .env.dev, .env.prod.

docker compose --env-file ./config/.env.dev up

Пример

Создать файл .env в каталоге вашего проекта и вставьте следующее:

USER_NAME='user'
PASSWORD='password#123'

Создать файл докер-compose.yml в каталоге вашего проекта и вставьте следующее:

version: '3.2'
services:

  my_rabbit:
    container_name: my_rabbit
    image: rabbitmq:3-management
    ports:
      - "5672:5672"
      - "8080:15672"
    environment:
      RABBITMQ_DEFAULT_USER: ${USER_NAME}
      RABBITMQ_DEFAULT_PASS: ${PASSWORD}

Теперь, чтобы проверить замену, используйте конвертировать команда, как показано ниже —

docker compose convert

Выход

env-1.PNG

Ссылка

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *