如何在filebeat.yml文件中使用变量

问题描述 投票:0回答:1

我在filebeat.yml中使用env变量,它无法解析变量。

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文件中使用环境变量。

谢谢。

docker elasticsearch filebeat
1个回答
0
投票

每个变量引用在启动时由环境变量的值替换。替换是区分大小写的,并且在解析YAML文件之前发生。除非指定默认值,否则对未定义变量的引用将替换为空字符串。要指定默认值,请使用:

$ {VAR:DEFAULT_VALUE}

完整的文档是here

© www.soinside.com 2019 - 2024. All rights reserved.