A Docker image for Caddy. This image includes the git addon.
$ docker run -d -v $(pwd):/srv -p 2015:2015 abiosoft/caddy
Point your browser to http://127.0.0.1:2015
.
Caddy can serve sites from git repository using git middleware.
Replace github.com/abiosoft/webtest
with your repository.
$ printf "0.0.0.0\ngit github.com/abiosoft/webtest" > Caddyfile
$ docker run -d -v $(pwd)/Caddyfile:/etc/Caddyfile -p 2015:2015 abiosoft/caddy
Point your browser to http://127.0.0.1:2015
.
The image contains a default Caddyfile.
0.0.0.0
browse
Caddyfile: /etc/Caddyfile
Sites root: /srv
Replace /path/to/Caddyfile
and /path/to/sites/root
accordingly.
$ docker run -d \
-v /path/to/sites/root:/srv \
-v path/to/Caddyfile:/etc/Caddyfile \
-p 2015:2015 \
abiosoft/caddy
Note that this does not work on local environments.
Add email to your Caddyfile to avoid prompt at runtime. Replace user@host.com
with your email.
tls user@host.com
You can change the the ports if ports 80 and 443 are not available on host. e.g. 81:80, 444:443
$ docker run -d \
-v $(pwd)/Caddyfile:/etc/Caddyfile \
-p 80:80 -p 443:443 \
abiosoft/caddy
Optional but advised. Save certificates on host machine to prevent regeneration every time container starts.
$ docker run -d \
-v $(pwd)/Caddyfile:/etc/Caddyfile \
-v $HOME/.caddy:/root/.caddy \
-p 80:80 -p 443:443 \
abiosoft/caddy