Problem
You are trying to set up http endpoint monitoring with prometheus and blackbox_exporter by specifying something like the following:
... job_name: 'blackbox' metrics_path: /probe params: module: [http_2xx] static_configs: - targets: - 'localhost:8080' relabel_configs: - source_labels: [__address__] target_label: __param_target - source_labels: [__param_target] target_label: instance - target_label: __address__ replacement: 127.0.0.1:9115 ...
but you are getting the error (in prometheus targets) that connection was refused.
Solution
First specify the ip protocol as ip4 if you are not using ip6 like:
modules: http_2xx: prober: http timeout: 5s http: preferred_ip_protocol: "ip4" valid_status_codes: [200] method: GET
And then make sure that you use the container IP address in the replacement field if you have started blackbox_exporter as a docker container (tip taken from here), which you can find by looking for the container IP address (docker inspect blackbox_exporter | grep IPAddress).
So your prometheus configuration should look like the following (different replacement IP):
job_name: 'blackbox' metrics_path: /probe params: module: [http_2xx] static_configs: - targets: - 'localhost:8080' relabel_configs: - source_labels: [__address__] target_label: __param_target - source_labels: [__param_target] target_label: instance - target_label: __address__ replacement: 172.17.0.3:9115