pieterlouw / caddy-net

Proxy server type for Caddy server (https://github.com/mholt/caddy)
Apache License 2.0
66 stars 11 forks source link

Support for Caddy v2 Being Considered? #23

Open orware opened 4 years ago

orware commented 4 years ago

Good morning, just wanted to reach out and ask if the development of Caddy v2 is being monitored by yourself and if there is a plan to rebuild the net plugin so it is available for v2?

I'm utilizing the net plugin for a pretty key capability right now on my end with Caddy v1 and would like to switch to Caddy v2 once available, but not sure if the net plugin will be available anytime soon for v2?

pieterlouw commented 4 years ago

Hi @orware,

I am monitoring the Caddy v2 development but not intensively enough to rebuild the net plugin. I will research and reach out to @mholt to see what will be involved. At this stage I won't be able to give a timeline of exactly when I'll get to going with this, will keep you updated on this issue.

mholt commented 4 years ago

Hello! :wave:

Once you understand the Caddy 2 architecture and the basics of writing modules for it, I think you'll be really pleased with the experience.

The top of the Extending Caddy article has a template you can use as a basis. Your module might be called net or something to that effect. (I would like to find a better name, if possible, to describe the specific layer of the OSI stack it is aimed at.)

You would then implement Start() and Stop() methods and go from there!

I can also guide you through adding Caddyfile support when you get to that point, but definitely start with just the JSON config first.

You can use xcaddy to build and test your module, as a replacement for the caddy or go run or go build commands.

Let me know if you have any specific questions!

mholt commented 3 years ago

Just to give everyone an update, I've gone ahead and implemented this functionality as a v2 module, I call it Project Conncept: https://github.com/mholt/conncept

It's a lot of work, as I'm sure @pieterlouw can attest! 🙂 Right now I'm giving exclusive early access to sponsors, but once we reach 50 sponsors I'll release it to the public.

It's like the net plugin on steroids in terms of capabilities. There is no Caddyfile for it yet, but that's on my list. I think the net plugin has laid a great foundation and was a great source of inspiration, and I've made a number of my own improvements along the way. Thanks again Pieter for all you've done with the net plugin! I keep hearing from people how useful it has been.

pieterlouw commented 3 years ago

Hi @mholt ,

This is great news! It also looks like it's got some nice features - a proper upgrade from caddy-net. Also, I like the name - Conncept.

I'm glad to hear some people could find value from the plugin. It was a real pleasure working on it back then and the purpose was to help the Caddy project as the Caddy project brought lots of value for me.

Pieter