{ "consul": "{{ if .CONSUL_AGENT }}localhost{{ else }}{{ .CONSUL }}{{ end }}:8500", "preStart": "/usr/local/bin/reload.sh preStart", "logging": {"level": "DEBUG"}, "services": [ { "name": "nginx", "port": 80, "health": "/usr/bin/curl --fail --silent --show-error --output /dev/null http://localhost/nginx-health", "poll": 10, "ttl": 25, "interfaces": ["eth0"] }, { "name": "nginx-public", "port": 80, "health": "/usr/bin/curl --fail --silent --show-error --output /dev/null http://localhost/nginx-health", "poll": 10, "ttl": 25, "interfaces": ["eth1", "eth0"] }{{ if .ACME_DOMAIN }}, { "name": "nginx-public-ssl", "port": 443, "health": "/usr/local/bin/acme init && /usr/bin/curl --insecure --fail --silent --show-error --output /dev/null --header \"HOST: {{ .ACME_DOMAIN }}\" https://localhost/nginx-health", "poll": 10, "ttl": 25, "interfaces": ["eth1", "eth0"] }{{ end }} ], "backends": [ { "name": "joyent-portal-ui", "poll": 7, "onChange": "/usr/local/bin/reload.sh" } ], "coprocesses": [{{ if .CONSUL_AGENT }} { "command": ["/usr/local/bin/consul", "agent", "-data-dir=/data", "-config-dir=/config", "-rejoin", "-retry-join", "{{ .CONSUL }}", "-retry-max", "10", "-retry-interval", "10s"], "restarts": "unlimited" }{{ end }} {{ if and .CONSUL_AGENT .ACME_DOMAIN }},{{ end }} {{ if .ACME_DOMAIN }} { "command": ["/usr/local/bin/consul-template", "-config", "/etc/acme/watch.hcl", "-consul", "{{ if .CONSUL_AGENT }}localhost{{ else }}{{ .CONSUL }}{{ end }}:8500"], "restarts": "unlimited" }{{ end }}], "telemetry": { "port": 9090, "sensors": [ { "name": "nginx_connections_unhandled_total", "help": "Number of accepted connnections that were not handled", "type": "gauge", "poll": 5, "check": ["/usr/local/bin/sensor.sh", "unhandled"] }, { "name": "nginx_connections_load", "help": "Ratio of active connections (less waiting) to the maximum worker connections", "type": "gauge", "poll": 5, "check": ["/usr/local/bin/sensor.sh", "connections_load"] } ] }, "tasks": [ ] }