Lightweight password protection to Consul HTTP using Nginx.
Simply link against a running Consul container using the alias consul
and provide a username and password with the HTPASSWD
environment variable:
$ docker pull progrium/consul-access
$ docker run -d \
--link consul:consul \
--env "HTPASSWD=<username> <password>" \
--publish 80:80
progrium/consul-access
If you're running Consul in --net=host
mode, you can just set the IP manually with --add-host
:
$ docker run -d \
--add-host consul:<consul ip> \
--env "HTPASSWD=<username> <password>" \
--publish 80:80
progrium/consul-access
Since HTTP Basic authentication is used, you should only access this behind SSL otherwise your password is transmitted unencrypted.
BSD