caddy-json-schema
caddy-l4
caddy-json-schema | caddy-l4 | |
---|---|---|
1 | 21 | |
121 | 771 | |
- | - | |
0.0 | 7.0 | |
almost 2 years ago | 6 days ago | |
Go | Go | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
caddy-json-schema
-
Show HN: Caddy v2.5.0
Thanks for recommending it!
I hear ya. The JSON config is definitely not trivial. I wrote our JSON docs and strove to made them easy to follow. You can traverse into the module structure piece-by-piece here: https://caddyserver.com/docs/json/
There is also a Caddy plugin by @abiosoft that can generate a JSON schema for your custom Caddy builds, which can then be used by IDEs to give you autocomplete and validation: https://github.com/abiosoft/caddy-json-schema
I also sometimes recommend writing your config by hand in the Caddyfile, then using `caddy adapt` to get the JSON equivalent. (It might not always be the prettiest JSON, since the adapter is only so smart.) But then you can fine-tune the JSON a little easier, possibly. Hope that helps!
caddy-l4
- Take a look at traefik, even if you don't use containers
-
Caddylike solution for SSH/SFTP
https://github.com/mholt/caddy-l4 and https://github.com/kadeessh/kadeessh can do SSH forwarding.
-
Minecraft server with VPS as a proxy
3) Use a L4 TCP/UDP plugin for caddy. https://github.com/mholt/caddy-l4
-
Nginx Reverse Proxy game hosting
Wireguard gives my service servers their own internal IP for the gateway to reference (nothing fancy done with it, no iptables modifications like you may see on other guides), and I use NGINX for the game server proxying, specifically linuxserver's nginx container. I love Caddy, but even with caddy-l4 I couldn't get it working right for Valheim (and thus UDP), but NGINX worked real quick.
- Help routing packets from a static public ip to tailscale device
-
Accessing an IP camera stream through caddy
This may help: https://github.com/mholt/caddy-l4
-
The Future of Nginx: Getting Back to Our Open Source Roots
Well, that's a bit off-topic from the parent comment, which was more about the Caddyfile supporting complex config (versus the underlying JSON config) and not really "complex usecases".
But that said, from a quick Google search... was this an RTMP stream? If so, I suppose you'd want to use https://github.com/mholt/caddy-l4 which is a plugin for Caddy that lets you do TCP-layer things. Caddy's standard distribution just ships an HTTP server (plus TLS and PKI, etc), which is layer-7
You might be able to use caddy-l4's "tee" handler to pipe into multiple "proxy" handlers. But I'm not sure anyone's tried this yet, I had no idea people did this sort of thing. I'd be interested to hear if it does work though.
-
Brand new to this, have a few questions about DDNS, reverse proxies, etc
If you are only having your services accessible via LAN, HTTPS isn't totally necessary, but I would still recommend it. I think a reverse proxy will be easier than your described method. Just set it to listen to 443 and have all of your other services on random ports being proxied from the reverse proxy. If you want HTTPS from your reverse proxy to your services, most reverse proxies will have this kind of feature. Here is the caddy L4 raw TCP stream module: https://github.com/mholt/caddy-l4
-
Alternative to SRV record?
I had a similar problem a while back and found this project (Caddy-L4). It had no releases or examples on how to build it so I forked it and added some Docker stuff.
-
Show HN: Caddy v2.5.0
"Caddy L4" aka "Project Conncept" might be what you're looking for:
https://github.com/mholt/caddy-l4
"Project Conncept is an experimental layer 4 app for Caddy. It facilitates composable handling of raw TCP/UDP connections based on properties of the connection or the beginning of the stream."
What are some alternatives?
acmez - Premier ACME client library for Go
gateway-api - Repository for the next iteration of composite service (e.g. Ingress) and load balancing APIs.
ingress - WIP Caddy 2 ingress controller for Kubernetes
authelia - The Single Sign-On Multi-Factor portal for web apps
Caddy - Fast and extensible multi-platform HTTP/1-2-3 web server with automatic HTTPS
certmagic - Automatic HTTPS for any Go program: fully-managed TLS certificate issuance and renewal
nginx-proxy - Automated nginx proxy for Docker containers using docker-gen
caddy-docker-proxy - Caddy as a reverse proxy for Docker
go-esi - Pure implementation of the non-standard ESI (Edge-Side-Include) specification in Go
caddy-ssh - Caddy-SSH is a general-purpose, extensible, modular, memory-safe SSH server built in Go [Moved to: https://github.com/kadeessh/kadeessh]