I would suggest not separating the storage from the server that far. It would probably be wiser to run the app with less latency to the storage and accept more latency on the web frontend. In short: use your VPS as a gateway only and put the actual host for the respective app into your home behind a VPN.
Selfhosted
A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.
Rules:
-
Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.
-
No spam posting.
-
Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.
-
Don't duplicate the full text of your blog or github here. Just post the link for folks to click.
-
Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).
-
No trolling.
Resources:
- selfh.st Newsletter and index of selfhosted software and apps
- awesome-selfhosted software
- awesome-sysadmin resources
- Self-Hosted Podcast from Jupiter Broadcasting
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
Gotcha. I like that approach. Thanks!
That really depends, are you looking for an actual filesystem or (for real) object level storage? Does the frontend have compatibility with s3-type endpoints?
I would recommend a vpn like tailscale to encrypt traffic and not expose your local env to the internet
Here are some self-hosted s3 compatible options: https://geekflare.com/self-hosted-s3/
Although I think you might want to reconsider your architecture here. If you're planning on self-hosting the storage for a frontend hosted on a VPS somewhere latency is probably going to make for a pretty bad experience.
I can't help with the whole connection between the VPS and your home server bit, but Minio is probably what you're looking for when it comes to selfhosted object storage.
I've never used object storage before, so I'm not even sure that's the best approach for the use case. It makes sense when you need to access storage provided by a 3rd party in a standardized way, but perhaps it's overkill when everything is self hosted. I wonder if folks have other ways to connect the application to remote storage that's less "heavy." That said, I will certainly dig into Minio, as it seems to be the best of breed. Thanks!
Yeah, I'm not so sure either.
I mostly just played around with it because some application I was testing relied on s3 storage and Minio was the best selfhosted project I could find that was s3 compatible. Worked pretty well, from what I can remember.
Are there really any options other than minio?
https://garagehq.deuxfleurs.fr/
Might be a good option if you want to add some off-site redundancy.
Otherwise there is no real need to use object storage for this.
Have you used garagehq before? Any idea how it compares to Minio?
I haven't heard of it before, but it looks simpler than Minio for distributed storage from a quick glance.
No, I have not used it myself yet. It is on my try sometimes in the future list though.
If you're based in Europe, have a look at Contabov they offer VPS with 1.6TB for about €18/month. The performance are not good (IMHO), but maybe for just family use it can do it.