我正在使用 Consul Template V0.19.0 for windows来渲染 nginx 负载平衡配置。它按预期工作。
现在我想要 consul 模板,在带有 args(-s reload)的文件夹中执行 nginx exe,如下所示:-
情况1:
template {
source = "Template/template.ctmpl"
destination = "F:\\IDE\\Visual Studio Collection\\Web Servers\\nginx-
1.12.0\\nginx-1.12.0\\conf\\nginx.conf"
command = "F:\\IDE\\Visual Studio Collection\\Web Servers\\nginx-
1.12.0\\nginx-1.12.0\\nginx -s reload"
command_timeout = "60s"
}
但它会引发错误,例如“无法从“Template/template.ctmpl”执行命令“F:\IDE\Visual Studio Collection\Web Servers\nginx-1.12.0\nginx-1.12.0\nginx.exe”=> "F:\IDE\Visual Studio Collection\Web Servers\nginx-1.12.0\nginx-1.12.0\conf\nginx.conf": child: exec: "F:IDEVisual": 文件不存在"。
案例2:- 目前我通过将nginx作为服务(使用nssm)实现了这一点,并给出了类似的命令,
command = "powershell restart-service nginx"
而不是给出完整路径,然后是“-s reload”。
但为此,必须使用 nssm 等应用程序将 nginx 作为服务。
我可以知道,有没有办法告诉领事模板配置中的命令属性,“像案例1一样执行文件夹中的nginx exe ”?
谢谢。