Prometheus in docker-compose setting

I am trying to run pydio cells following this documentation page Running a Cells container behind a Traefik reverse proxy | Pydio. I took the first example and added prometheus as in the “live environment” section. It seems to run fine but when I check /prometheus/targets they all fail with something like

Get "http://127.0.0.1:41645/metrics/77cb655a-7a50-4f2a-a5d4-58af7f5c6f5c": dial tcp 127.0.0.1:41645: connect: connection refused

Which makes sense because in

➜ cat ./metrics/prom_clients.json | jq
[                                              
  {                                            
    "targets": [                               
      "127.0.0.1:43645"                        
    ],                                         
    "labels": {                                
      "__metrics_path__": "/metrics/8131a2d8-f2ff-45de-9b2e-9b81e25ed1a8",
      "instance": "s:^pydio.grpc.jobs$",  
      "job": "cells",                          
      "pid": "54",                             
      "rootID": "8131a2d8-f2ff-45de-9b2e-9b81e25ed1a8"
    }                                          
  },  
  ...

the target address is always 127.0.0.1, which is not accessible from the prometheus container. I guess replacing it with the name of the docker-compose service could do the trick, is there a config that I missed for this?

Thanks in advance for your help!

Hi @batonycle and welcome

You are indeed right, the conf described in the doc is not correct.

For this kind of setup we cannot use “file_scraping” but rather “http scrapping”.

We have introduced this recently in cells. It is still experimental but we use it massively in our tests / validations setups.

I have updated the doc, but it is not yet pushed to the web server, you can yet find it here:

Let us now if some things are still unclear or not yet correct.

Hi @bsinou

thank you for the response and for updating the docs!
I will test this and let you know if I manage to make it work.

All good I finally get my metrics!
I just had to modify the port in prom.yml to 8080 because I use the cells image from linuxserver.io (need the arm64 image for my raspberry pi)