I wrote a post a while back about nginx-proxy and how I was using it to resolve local DNS records. Today I decided I wanted to be able to monitor my server remotely using glances running over Supervisor and utilizing glances' internal webserver.
I could be running
glances inside a docker container and exposing the docker socket to monitor most of the metrics but that would mean I'd lose useful disk and network information. So since this isn't going to be running inside a container I needed a somewhat creative way to add it to the
Configure the program you wish to run through Supervisor:
Load and start the configured program:
Confirm everything is running:
Now the creative part, adding it to the
nginx-proxy network. To be able to do this we are going to make use of a docker image called docker-host. Simply explained this image allows you to forward TCP and UDP traffic from within the container to the docker host.
By giving the
glances service access to the docker host by giving it the desired Linux capabilities we can expose the
61208 port which is being used by the
glances webserver and forward all traffic coming in from
status.local to the correct destination.
Now whenever I visit http://status.local I'm able to monitor my server using the familiar
glances interface remotely without having to
ssh each time.