【问题标题】:json configuration of consul watch handlerconsul watch handler的json配置
【发布时间】:2019-11-20 08:19:41
【问题描述】:

我想在 sudo 模式下运行一个脚本作为我的 consul watch 处理程序,我可以使用命令运行它

consul watch -type key -key mykey sudo -u myaccount /scripts/myscript.sh

但我不知道如何在json配置中定义,我在下面尝试过但它不起作用

{
  "watches":[{
    "type":"key",
    "key":"mykey",
    "handler_type":"script",
    "args":["sh","-c","sudo","-u","myaccount","/scripts/myscript.sh"]
  }]
}

我正在使用 consul 1.5.2,这是错误:

[ERR] 代理:无法运行监视处理程序“[sh -c sudo -u myaccount /scripts/myscript.sh]”:退出状态 1

谁能告诉我我的 json 配置有什么问题?

【问题讨论】:

    标签: consul


    【解决方案1】:

    我移动了sh -c

    我可以使用它:

    "watches":[{
      "type":"key",
      "key":"mykey",
      "handler_type":"script",
      "args":["/bin/sudo","-u","consul","/bin/sh","-c","/home/testscript.sh"]
    }]
    

    -c 要求脚本是可执行的。您还需要正确的 sudo 权限。当脚本可执行时,您甚至可以完全删除 sh -c

    【讨论】:

      猜你喜欢
      • 2021-12-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多