Как использовать переменные в файле filebeat.yml - PullRequest
0 голосов
/ 26 марта 2019

Я использую переменные env в filebeat.yml, он не может разобрать переменные.

filebeat.yml

 output.elasticsearch:
 hosts: [$ELASTICSEARCH_HOST]
 template:
  name: "filebeat"
  path: "fields.yml"
 overwrite: false
 protocol: "http"

докер-compose.yml

  version: "3.5"

  services:

   filebeat:
       build:
       context: ./filebeat
       args:
        ELK_VERSION: $ELK_VERSION
       volumes:
           - "/var/lib/docker/containers:/usr/share/dockerlogs/data:ro"
           - "/var/run/docker.sock:/var/run/docker.sock"

   networks:
    default:
     name: filebeat-nw
     external: true

Я экспортировал переменную $ ELASTICSEARCH_HOST в переменные окружения. Однако он не может разобрать документ.

Я запускаю контейнер как службу с помощью команды "docker-compose up --build"

Я хочу понять, как использовать переменные окружения в файле filebeat.yml.

Спасибо.

1 Ответ

0 голосов
/ 05 апреля 2019

Каждая ссылка на переменную при запуске заменяется значением переменной среды. Замена выполняется с учетом регистра и происходит до разбора файла YAML. Ссылки на неопределенные переменные заменяются пустыми строками, если не указано значение по умолчанию. Чтобы указать значение по умолчанию, используйте:

$ {VAR: default_value}

Полная документация здесь

...