How do you monitor varnish cache inside a docker container?
Varnish is monitored with what they call VSM. It's a file in your container. If you bind mount the folder where the files is, you can share the same folder / files in other containers that will be able to read it, and thus will be able to monitor your varnish instance.
See the note about VSM and containers in varnish docs.
I have been able to launch a varnishstat with statistics in a container with varnish in the image, but no varnish running, like this:

docker run --rm -it \
       --entrypoint=/bin/sh \
       -v /var/lib/docker/overlay2/$hash/merged/usr/local/var/varnish/$hostname:/varnish \
      emgag/varnish:5.1.3 varnishstat -N /varnish/_.vsm