Plugin file
Plugin configuration file
{
"name" : "prometheus",
"version" : "2.46.0-1",
"description" : "Prometheus monitoring system",
"author" : "Jaime Bautista",
"license" : "MIT",
"repository" : {
"type" : "git",
"url" : "https://github.com/thinger-io/plugins.git",
"directory": "prometheus"
},
"metadata" : {
"name" : "Prometheus",
"description" : "Integration of Prometheus with Thinger.io",
"image" : "docs/assets/prometheus-logo.svg",
"icon" : "docs/assets/prometheus-logo.svg"
},
"tokens" : {
"prometheus_plugin_callback" : {
"name" : "Prometheus metrics endpoint token",
"allow" : {
"Plugin" : {
"prometheus": ["CallPluginEndpoint"]
}
}
}
},
"resources": {
"storages": [
{
"storage": "prometheus_settings",
"name": "Prometheus Settings",
"description": "Storage to be able to edit and reload prometheus configuration",
"public": false
}
]
},
"task": {
"type": "docker",
"image": "prom/prometheus:v2.46.0",
"cmd": [
"--web.external-url=https://{{THINGER_HOST}}/users/{{THINGER_USER}}/plugins/{{THINGER_PLUGIN}}/",
"--web.route-prefix=/",
"--config.file=/settings/prometheus.yml"
],
"user" : "0:0",
"volumes": [
{
"source": "../../../storages/prometheus_settings",
"target": "/settings",
"description": "Prometheus configuration"
}
],
"copy" : {
"config" : "../../../storages/prometheus_settings"
}
},
"interface" : {
"main" : {
"proxy_to" : {
"plugin": "prometheus",
"port" : 9090,
"rewrite_base_path": true
}
}
}
}