Traefik, because I can configure it with labels on my containers and don’t have to deal with the proxy config every time I add a new service.
Used nginx for years but it’s starting to show the signs of its age, same as Apache did a few years before that.
deleted by creator
Depends ;)
Private: Traefik, as it was default on k3s and I just get used to it. Work: mostly Nginx
I use Caddy, but recently realising it’s not good enough. Dealing with any traffic that’s not HTTP/s puts you in a pickle.
For me it’s https://nginxproxymanager.com/ it’s just so easy to setup and use. One docker command and you’re up and running with a nice webinterface to manage access to your docker instances with ssl. I heard good things about Traefik too but I have no personal experience with that one. NPM does everything I need and if it ain’t broken… :)
Edit: because people love screenshots https://nginxproxymanager.com/screenshots/
I used NPM for a very long time, but after I switched to podman, DNS name resolution for containers stopped working in NPM, they work fine in every other container. Switched to caddy and it’s okay, it only supports HTTP transports so I can’t use it as a gateway for my DoH/DoT server, but that’s not a huge deal. Once NPM works properly on podman I may switch back
I second that. Amazing easy to use, configure, supports (LetsEncrypt) certificates via DNS-01 challenge and integrates with ease with most DNS providers.
Paired with authentication providers (keycloak, authelia, authentik), the “advanced” textbox lets you do forward proxying really easy, or customize your “basic proxy”.
I’m not sure how many of these features are present in Traefik, it would be really nice if any of you know if any of these are easily supported in it:
- Forward proxying
- Custom rewrites (nginx
internal;
rewrites) - Unattended DNS-01 support with ACME (LetsEncrypt)
I’ve been using NPM for years… but since 2.10.3 broke SSL certificates and there’s been literally no interest from JC21 to fix the problem (there’s a PR ready to go) i’ve been forced to look elsewhere and have settled on caddy for now…
To be fair, the pull request was last week. It’s inconvenient but life/work balance.
Agreed but it’s more the worry that it’s been broken for over 3 weeks and the dev(s) seems to have no interest in resolving it… to me that is a bad sign of things to come and projects being abandoned.
If i’m incorrect and the devs have been vocal about the issue then please correct me and point me to where i should be looking.
I’m not challenging you, so please don’t take offence here but is the issue sincerely a ‘lack of interest’ or is it just that NPM is FOSS and the maintainer is bogged down with life? You could fork it and fix it.
It’s a very good question and of course… i could fork it and fix it using the PR… but then that would be it… I’m not experienced enough to even achieve that to be honest…
My issue I guess is not so much with the fact that there is a problem… it’s with the fact that i can’t afford for my homelab to be down because it’s never fixed or takes time to fix… i appreciate all of this is free… i think i may of even donated at some point because i was so thankful it existed… but now it’s such an integral part of my and my families life that i cannot have something in my stack that isn’t going to be fixed rapidly.
JC21 created an amazing product and if it’s fixed or V3 ever appears i’ll 100% check it out… but for now whilst it’s not as pretty… i have to fall back to caddy.
HaProxy for most of the stuff and Nginx for very limited stuff. Or a combination between HaProxy and Nginx in some very special cases.
I use NGiNX and have ever since I started. It just works and is easy to configure.
Same. I know it’s more work than caddy etc, but I’ve been doing it for eons now so it’s muscle memory at this point.
Traefik across 3 nodes internally for its Nomad service discovery. HAProxy for my non-Nomad stuff.
Another nomad person! There are dozens of us!
For me it’s traefik. It’s took me a while to get it working, but it’s actually really easy now. Setting up container access with labels is very convenient!
Like some others have said, I use NGINX due to it’s flexibility and ease of configuration. I want to be able to tweak performance and security settings to be exactly how I want them, and NGINX let’s me do that.
I’ve been using caddy for a while. I’ve been really happy with it, it is very small learning curve especially for someone brand new to reverse proxies. Config file syntax is very simple.
However I’ve been thinking of moving to nginx. After I learned about OpenResty and the possibility to script nginx with Lua, nginx is very tempting. Sadly caddy has nothing similar.
Let’s see. At work it’s a mix between apache (I’m slowly replacing with nginx as services are migrated) and aws’s alb ingress controller (while I’m not a fan, it lets me use acm certs).
At home it’s all nginx.
nginx if only because I can’t bring myself to spend the time it would take to try out a new one. I should probably take another swing at traefik sometime
Caddy for general reverse proxy stuff, works like magic and makes certs, routing, etc just work.
I also have a lot of my stuff subsequently reverse proxied behind Authentik for anything that shouldn’t be exposed to the public internet
I made the switch from NGINX to Caddy. For me, configuring Caddy is much more simple than configuring NGINX. Also Caddy automatically obtains and renews SSL certificates.
So, Caddy’s simplicity is what won me over. I don’t care about speed since I’m the only user of my self-hosted services.