4 ms·
Caddy is dead simple. Like, send https://example.com https://example.com to 1.2.3.4:5000. That’s it! Certificate provisioning, TLS configs, TLS termination, mT
by aborsy 1y ago
Caddy is dead simple. Like, send https://example.com https://example.com to 1.2.3.4:5000. That’s it!
Certificate provisioning, TLS configs, TLS termination, mTLS and client certificates, sticking in middlewares, … are all simple. The config is a straightforward text file. Really good webserver!
Traefik is docker centric, and had various obscure labels. Too much text for a simple proxy. The debugging can be an issue if it doesn’t work. It also takes more resources. But it can probably do more, if you have a complex need.
My main issue with Traefik was the debugging.
- Ajedi32 1y agoDoes Caddy automatically detect when you deploy a new Docker service and reconfigure itself to route traffic to that service? That's pretty much the main value preposition of Traefik for me. I don't want to be messing with config files when I'm deploying.
- sph 1y agoCaddy is a webserver like Apache or nginx. Integration with Docker is a higher-level layer. There’s caddy-docker-proxy but I haven’t tried it.
- Ajedi32 1y agoTraefik is also a web server like Apache or Nginx and it does integrate with Docker. I thought that feature was like the entire reason to use Trafik, so I guess I just find the comparison a bit strange.
- LtdJorge 1y agoTraefik is a proxy first
- jspdown 1y agoTraefik maintainer here. Traefik is a reverse proxy and load balancer that automatically discovers services and configures routing rules dynamically through integration with various configuration sources such as container orchestrators (Docker, K8s, Nomad, Consul, ECS, ...) As of today, Traefik is not a web server.
- rirze 1y agoYes, there's [caddy-docker-proxy](https://github.com/lucaslorentz/caddy-docker-proxy https://github.com/lucaslorentz/caddy-docker-proxy) which I personally use in my homelab. It will read and update on docker compose labels to configure the route. Highly recommend.
- ajayvk 1y agoI have been building an app deployment service https://github.com/openrundev/openrun https://github.com/openrundev/openrun. For the use case of network routing for services running in containers, OpenRun provides a simpler abstraction. It does the container management and the network proxying.
- tecleandor 1y agoYeah, don't know exactly why, but when I've had problems, debugging Traefik has been kinda frustrating. Also, I feel like they've slowly moved focus to Docker during the years, and I find the file based configuration more and more difficult (or worse documentation maybe) every time I go back to the docs. Thanks for sharing!