在Docker环境中实现Consor healthcheck

在Docker环境中实现Consor healthcheck,docker,consul,registrator,Docker,Consul,Registrator,我是新来的领事/注册人和码头工人。我对在Docker环境中使用Concur healthcheck感到困惑。在Docker+Interval部分的以下链接中进行了描述: 以下是链接中描述的领事健康检查定义示例: { "check": { "id": "mem-util", "name": "Memory utilization", "docker_container_id": "f972c95ebf0e", "shell": "/bin/bash",

我是新来的领事/注册人和码头工人。我对在Docker环境中使用Concur healthcheck感到困惑。在Docker+Interval部分的以下链接中进行了描述:

以下是链接中描述的领事健康检查定义示例:

{
  "check": {
    "id": "mem-util",
    "name": "Memory utilization",
    "docker_container_id": "f972c95ebf0e",
    "shell": "/bin/bash",
    "args": ["/usr/local/bin/check_mem.py"],
    "interval": "10s"
  }
}
healthcheck脚本是在docker映像内还是在docker映像外(在示例中:check_mem.py)?我们是否应该知道容器的ID并手动在字段中插入:docker\u container\u ID?(这不是很有效的方法)

我一直在谷歌上搜索,我能找到的唯一答案是在以下讨论的末尾:

但这段代码是一些“变通方法”——它使用docker“primal”healthcheck和registor变量-ENV SERVICE\u CHECK\u脚本。它不使用领事健康检查脚本


有谁能帮助我了解Concur healthcheck在docker环境中的工作原理。

docker healthcheck在docker容器中运行

您的示例相当于docker exec f972c95ebf0e/bin/bash/usr/local/bin/check_mem.py