将envoy的envoy.yaml配置分割成多个文件(仅限Docker)。
我正在用恩华公司处理四个不同的港口/案件。
- IPv6 http
- IPv4 http
- IPv6 https
- IPv4 https
对于IPv6和IPv4,配置是相同的,而对于http,有一个不同于https的配置。
为了实现这一点,我把我的envoy配置分成几个片段,并在构建容器时把它们加在一起。
下面是我的新Docker文件的样子。
FROM envoyproxy/envoy:latest
COPY config /tmp/config
运行 cat /tmp/config/envoy_head.yaml /tmp/config/http_head_one.yaml /tmp/config/http_body.yaml /tmp/config/http_head_two.yaml /tmp/config/http_body。yaml /tmp/config/https_head_one.yaml /tmp/config/https_body.yaml /tmp/config/https_head_two.yaml /tmp/config/https_body.yaml /tmp/config/envoy_tail.yaml >/etc/envoy/envoy.yaml
我的配置文件包含几个文件,它们被合并到envoy.yaml中。
不需要搜索 "如何在yaml文件中包含文件"
例如,这里是我的 envoy_head.yaml。
静态_资源。
听众。
正如你所看到的,它是相当简单的
(注意:它和所有其他文件一样以换行结尾--当合并时,这将产生所需的结果)。
不要忘记建立你的容器,运行,例如。
docker-compose up -build