我在那个领事模板中遇到问题,似乎在我的模板中替换了服务“ServiceAddress”而不是“地址”,我想知道是否有人能告诉我原因。
从我的 nginx 容器中的 consul-template 也正在运行的 bash 会话中,我可以从 Consul 获取服务定义:
curl http://consul-server.service.consul:8500/v1/catalog/service/service1
[{"Node":"ip-172-31-24-202","Address":"172.31.24.202","ServiceID":"ip-172-31-24-202:service1:23141","ServiceName":"service1","ServiceTags":null,"ServiceAddress":"172.17.0.3","ServicePort":32809}]
我的领事模板模板文件如下所示:
{{range service "service1"}}server {{.Address}}:{{.Port}};
我希望这会输出Address
,而不是ServiceAddress
服务的。但是,会发生以下情况:
consul-template -consul consul-server.service.consul:8500 -template "/var/templates/service1.conf.tmpl" -dry -once
server 172.17.0.3:32809