I am but a common business man with a big vision. Started on proxmox nearly 2 years ago. Got addicted to launching VM’s for every consumer-grade open source app being released on github daily. Self hosting biz websites… then replacing thousands a month in SaaS subscriptions with their open source alternatives… yea, I could have saved six figures had I dived into this shit earlier.
Now, If you’ve spent the amount of time I have in the VM/LXC/Docker world, you know why Incus kicks ass. You’re here so I don’t need to explain that part.
But I need something explained to me if someone would be so kind:
How exactly would you establish a declarative cloud-native (database-less!) multi-tenant container network system on a single VM?
I’ve tried the following:
- The very handy unix-account based project creation method standard in Incus.
Problem: lots of port forwarding and proxy rules, messy for multiple users running same web apps on single host.
- Host-level reverse proxy with DNS resolver per incus bridge.
Problem: Still deal with conflicts using same-name containers across projects.
- (dream) - VRF isolation at the host level, connecting project-based bridges to dedicated VRF tables.
These forums are pretty much all technical, so let me just cut to the chase of why number 3 or any solution to achieve the same thing would be magical for many of us from a biz use case perspective:
Reason 1 - If every incus project was able to share the same subnet and ports (which is the point of VRF), you can very quickly reach a cloud model that provides a new-user signup flow provisioning an entire virtual private cloud WITH live and production ready web apps in it… 100+ times on a single server… in about a second per user or more.
Reason 2 - Reason 1 basically means we could ditch docker with a more performant container system, and essentially standardize a “logical VM” network where the shell environment inside every container is nearly identical to a full blown VM - but with those full blown VM’s being portable and tiny like k8’s or docker swarm.
Reason 3 - With 1 and 2 in mind, you now don’t need a database for Incus - which currently runs on sqlite… Which is great for some private cloud fun, but instantly limiting when it comes to what REALLY needs to be replaced in the cloud market… which, is in fact, the entire cloud market.
So, provide that solution, and I’ll show you how to replace a hyperscaler of the AWS/GCP tier starting with a single VM host.
I’ve invested a lot of time and money into solving this problem and have high hopes… but I’m officially hitting a wall with how best to actually provide this solution I envision. Any takers?