In terms of speeding up adoption of Caddy 2, it may be useful to have a list somewhere of the concrete improvements between the two (as I'm sure there are many). A (very) brief look and search around only yielded this article[1] which referenced another link of improvements that now 404s[2].
Cheers,
[1] https://caddyserver.com/v1/blog/caddy-2-ready-for-developers
[2] https://github.com/caddyserver/caddy/tree/v2#list-of-improve...
That blog post is pretty old. We do have a current upgrade guide here in our docs: https://caddyserver.com/docs/v2-upgrade
We also have a (sort of deprecated) wiki with some (slightly outdated) high-level improvements listed: https://github.com/caddyserver/caddy/wiki/v2:-Improvements
The official documentation at https://caddyserver.com/docs/ is up to date, and not deprecated.
Help? :D
When you can make dpkg files, making an apt repo is trivial (using reprepro shipped with Debian)
And when it’s your repo, you make the rules about packaging what dependencies into which file(s)
But by having an apt repo (that users would subscribe to), you make it much easier for users to keep up to date
Deb files will be just fine.
I am very interested in the prospects of Starlark in Caddy 2. With an integrated scripting language Caddy could on its own be a replacement for OpenResty or Apache with mod_mruby. The preliminary implementation was removed in the beta phase with a note saying it would have to wait for when the project was financially stable [1]. Do you still plan to integrate Starlark if the project is a financial success?
[1] https://github.com/caddyserver/caddy/commit/8b28c36d480070c8...
One thing I stumbled upon the other day was that I (and google apparently, too) have trouble navigating the new website.
I find it much simpler to find relevant information on the old site.
Anyway, keep up the good work and stay healthy!
Not gonna lie though, there's more to learn. V2 is a powerful machine -- so do expect that there will be some reading. Once you know how it works, it's easy to use. Very simple configs are possible, etc.
Memory safety is a class of guarantees certain software offers you against certain vulnerabilities. Software written in C is generally considered "memory unsafe" since it's hard to write correct C code when managing with memory, so it's easier to find exploits in them that cause them to reveal secrets.
Go software has stronger memory safety guarantees than C programs like OpenSSH and Nginx. So that's one big benefit of using Caddy.
As it happens, someone in the audience here is writing a SSH app for Caddy, so you have a pure Go SSH server that is less vulnerable to those class of attacks.
Apart from memory safety, can the SSH version of caddy impose better defaults that OpenSSH doesn’t right now? Maybe TLS certs, security key support, etc?
I know I'd ideally like easier SSO integration, for example. Or provisioning of users.
Am curious what tools you use for testing Caddy: generating traffic for load testing, web fuzzing, net simulation, etc?
Is there an admin UI for v2? Seeing the configuration changes, it was the first idea that popped, would be great for the selfhosted community - maybe someone picks it up as a side project if it's not in scope.
Caddy 2 is a fresh new server experience. Some things might take getting used to, like having every site served over HTTPS unless you specify http:// explicitly in your config. But in general, it will feel familiar to v1 in a lot of ways. If you've used v1 before, I recommend going into v2 with a clean-slate using our Getting Started guide: https://caddyserver.com/docs/getting-started
I'm excited to finally get this out there. Let me know what questions you have!