问题描述
我想使用环境变量在 dockerized traefik 2 中加载配置。
为了实现这一点,我想在 traefiks 动态文件配置中使用 golang 模板功能。
我尝试了几种方法(我在这里发布了我的 json 测试),但我似乎无法将 ENV 解析为地图。 我还有其他方法可以实现这一目标吗?
docker-compose.yml
:
version: "2.4"
services:
internal-gateway:
image: my-internal-gateway
environment:
MY_MAPPINGS: >-
{
"microservice1": {"host": "service1:1234"},"microservice2": {"host": "service2:4321"}
}
我的dynamic-traefik-configuration.yml
:
http:
routers:
{{range $k,$v := env "MY_MAPPINGS"}}
router-{{ $k }}:
rule: "PathPrefix(`/{{ $k }}`)"
service: {{ $k }}
{{end}}
services:
{{range $k,$v := env "MY_MAPPINGS"}}
{{ $k }}:
loadBalancer:
servers:
- url: "{{ $v.host }}"
{{end}}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)