I plan to have the following services running concurrently on it:
- A VPN (OpenVPN or Wireguard)
- A very lightweight personal website
- A Nextcloud instance (25GB storage max)
- A Vaultwarden instance
- An Invidious instance
- A Matrix server
- A Lemmy instance
I’m unsure if these would be private or public instances. But I’d be curious to hear any thoughts on how much more space I’d need for public instances too, if you’d have a sense of that.
I currently have a VPS with 2GB RAM + 50GB storage. Would that be enough? Thanks in advance!
Of those, Matrix Synapse would be the heaviest. Consider using Dendrite before you get locked into the bad Matrix software.
You could also check out Conduit, it’s still in beta but very lightweight.
Conduit is a lightweight open-source server implementation of the Matrix Specification with a focus on easy setup and low system requirements. That means you can make your own Conduit setup in just a few minutes.
So true, every few months I get the urge to ditch Synapse, but then I think about how much of a hassle it would be to migrate and happily pay a few bucks more for the extra RAM on the VPS. Don’t be me, use Dendrite right from the start.
It took a minute to see that your title isn’t truncated automatically xD
8GB is needed for a “good experience”, you can go for 4 if you don’t join the massive rooms on Matrix
I have almost everything you listed running except An Invidious instance and your personal website ofc
- VPN Server: Practically nothing
- Nextcloud instance: 731 Mib
- Vaultwarden: 100 Mib
- Matrix home server & Database: 1.5 Gib
- Including bridges(Telegram, Whatsapp, Signal) and Element web 1.91 Gib
- Lemmy Instance: 200 Mib
Regarding storage: Matrix, Lemmy and Mastodon are gonna eat a lot of storage over time because they have to store media like pictures and videos. If you want i can look how much storage they use in total.
2gb will be probably insufficient, mainly because of Matrix Synapse. If you avoid joining any large communities it might work, but if you are not doing that you might as well use a XMPP server which is better anyways.
A small Lemmy instance will take around 500-1000mb RAM so that will likely work but use a significant portion of your RAM.
Thanks for the info. I wasn’t really able to find a clear answer elsewhere.
This is my droplet with 1GB of RAM only running lemmy:
free -m total used free shared buff/cache available Mem: 964 386 68 141 509 219 Swap: 2047 310 1737
So expect at least 1GB for lemmy with postgres included when you include spikes etc.
The heaviest things will probably be the postgres database(s) needed for nextcloud, vaultwarden, and lemmy. (not sure if invidious or matrix use dbs). I would say 500-1000MiB per DB, so probably around 4GiB to be safe.
Can’t you have multiple services using the same database? My understanding is that they would each do different tables and if you give each a different database user that’s not only good practice but also helps prevent them from stomping on eachother
You could, but it probably wouldn’t help much. The overhead for each additional Postgres server is minimal, the RAM usage comes from each database. It doesn’t really matter if those are on the same postgres instance or on separate ones, in my experience.
I am running Lemmy on mine with 1gb ram. 1 cpu. Ubuntu 22.04 server. I almost run out of ram. Seen as low as 50mb. Fwiw. My experience.
Probably will bump mine up.
Also, I found out my VPS host doesn’t allow smtp traffic (25 or 465)… Anyone got suggestions on hosts that are cheap, reputable that allow smtp?
Hetzner Cloud is cheap and EU based. They block smtp for new accounts, but you can turn off the smtp firewall after a month once you pay your first invoice. Otherwise, use a mail service like Sendgrid.
Hetzner is awesome, I’ve been using both their VMs and a Storage Box for my backups for years, never had any issues, reasonably priced as well!
Oracle Cloud Free Tier offers a lot for free, you need to add a credit card, but they have 2 x86 instances with 1GB RAM, and and up to 4 ARM instances with 24 GB cumulated RAM https://www.oracle.com/cloud/free/