Has anyone been able to get glances to show container metrics when going through docker socket proxy?
I tried enabling every flag listed on the socket proxy GitHub but glances still won’t show containers. It reports them just fine if I go directly to the socket.
Thanks!
Since I was feeling bad for giving the wrong answer in another comment, I spin up a docker socket proxy and did some test :)
The main points are:
- add DOCKER_HOST variable pointing to your tcp socket
- add CONTAINERS=1 variable in docker-socker-proxy to allow reading containers, otherwise it will fails silently (unless you run glances with -d) with a 403
Here’s a sample compose file, adjust to your needs. Please note that the tcp socket is not exposed outside of
admin_net
network and that glances does not have access to thedocker.sock
socket:version: '3.3' services: admin-glances: container_name: glances restart: always ports: - '61208:61208' environment: - GLANCES_OPT=-w - DOCKER_HOST=tcp://dockerproxy:2375 volumes: - './glances/glances.conf:/glances/conf/glances.conf' # - '/var/run/docker.sock:/var/run/docker.sock:ro' pid: host image: 'nicolargo/glances:latest-full' networks: admin_net: admin-docker-socket-proxy: container_name: dockerproxy hostname: dockerproxy image: tecnativa/docker-socket-proxy environment: - CONTAINERS=1 volumes: - '/var/run/docker.sock:/var/run/docker.sock:ro' # ports: # - '2375:2375' networks: admin_net: networks: admin_net: name: admin_net
OMG…Instead of the env variable DOCKER_HOST: tcp://dockerproxy:2375 I had hostname: tcp://dockerproxy:2375 in there which only changed the website title. So dumb. Everything else was the same as your example.
Thanks for the help!