I am thinking I’ll just keep a
Caddyfile to make it easy for humans and use a Docker CMD to convert it to JSON using
The plan is to have two containers.
The first (
static) will contain Caddy and is the webserver for my application. Caddy will start with a default configuration containing a website which I always need to exist.
I then have another container (
supervisor) which will dynamically configure Caddy for extra websites from a database.
supervisor will make a request against the Caddy Configuration API (in
static) to updaye Caddy’s configuration.
So one website stays regardless of anything else. Others come and go overtime. I was just hoping to store the configuration for the website that always remains in one spot rather than two, but it’s a little hard trying to use Caddyfile and
Again, nothing major and easy to work around.
I have a similar setup which is working really well but I use etcd and confd in the middle to fuse
static together (i.e.
supervisor updates etcd, and I use confd in
static to rewrite Caddy configuration files and reload Caddy). I want to remove etcd and confd entirely now that the Caddy Configuration API exists.