docker based auto-configurator for Caddy 2 & sequentialread.com docker-compose (mirror of https://git.sequentialread.com/forest/sequentialread-caddy-config)
| caddy | ||
| dockerbuild_caddy | ||
| dockerbuild_ghost | ||
| dockerbuild_gitea | ||
| dockerbuild_goatcounter | ||
| external-service | ||
| ghost-theme | ||
| gitea/data/gitea/conf | ||
| grafana-backup | ||
| greenhouse | ||
| loki | ||
| telegraf | ||
| .dockerignore | ||
| .gitignore | ||
| build-docker.sh | ||
| dir_perms.txt | ||
| docker-compose.yml | ||
| Dockerfile | ||
| go.mod | ||
| go.sum | ||
| main.go | ||
| README.md | ||
sequentialread-caddy-config
This repository contains two things,
- The
docker-compose.ymlfile which holds all the services I run on my personal website. - An application that talks to the docker socket to get info about containers and then generates a Caddy config, which it posts to Caddy 2 HTTP server.
- This is similar to https://traefik.io/ or https://github.com/nginx-proxy/nginx-proxy
- Yes I realize https://github.com/lucaslorentz/caddy-docker-proxy already does this :P
I am making my own instead for a couple reasons:
- I don't like the template-based solutions because they are harder to debug. One typically cannot put breakpoints or print statements inside a large complicated template file.
- I had already written code that generates Caddy configs for some of my other projects. This is the code that eventually became greenhouse-daemon.
Example docker labels to configure a container to be served publically:
sequentialread-80-public-port: 443
sequentialread-80-public-protocol: https
sequentialread-80-public-hostnames: "example.com,www.example.com"
sequentialread-80-container-protocol: http
how to generate favicon for ghost
sudo apt install icoutils
icotool -c -o test.ico sequentialread_favicon.png logo48.png logo70.png logo128.png