Show your stack: what’s running on your $3-5/mo VPS?
Curious what everyone’s squeezing out of their cheapest boxes. Always fun (and often humbling) to see how much people can pack into less than 1-2 GB of RAM.
Mine: [Hetzner/cloud/CX11
, e.g. “2GB RAM, 1 vCPU, 20GB NVMe”]
Running: [Ahsay backup server]
OS: [Debian]
Ram is a bit high on the CX11, more than I need/use. But that's what I had to work with.
Specifically want to hear: what’s the lowest-spec box you’re running something useful on, and what’s actually running on it? Curious what tricks people use to keep things lean — swap tuning, lightweight alternatives to the usual bloated stacks, anything unexpected you’ve gotten running on next to nothing.
Not interested in VPN setups for this one — plenty of those threads already, want to hear about everything else.
What’s on yours?
“Technology is best when it brings people together.” – Matt Mullenweg




Comments
We operate a global scale Named Data Networking Network.
https://yoursunny.com/p/ndn6/
https://yoursunny.com/p/ndn6/map/
The ndn6 network currently consists of nine VPS nodes.
Prices range from $6/year to $100/3y, excluding free machines offered by sponsors.
(Poor @Advin , they charge us $6/year so they don't get sponsorship credits.)
Daniel fan club 😎 affbrr
Nginx, Docker images with bloat removed, yt-dlp , ffmpeg. Then, POSIX, python scripts.
VPS Price Tracker is made up of two processes using 200 MB RAM: 140 MB for Nodejs and 60 MB for the database. Storage requirement is 4 GB. It could almost run on an ARM router on top of a fridge.
AD: VPS Price Tracker
Then why you got problem with GC?
VPS Price Tracker still runs on GC, their performance and stability are above average. The problem were the manual migrations, I posted a detailed walk-thru of the 16-hours restoration the first time it happened. But in essence, in VPS Price Tracker the database is coupled with the filesystem and it cannot work on EXT4, a rescue image preloaded with a custom kernel is required to begin the backup restoration from a remote ZFS. It was quite a bit of sunk time.
AD: VPS Price Tracker
Bloat removed manually or do you have a setup script?
I remember back in the day on LET (this was in the really early days) there was a wiki with setup scripts and other installations manuals.
“Technology is best when it brings people together.” – Matt Mullenweg
debootstrapdoesn't install any package above a bare minimal console environment, the installed system is ~300 MB IIRC. My basement workstation was born out ofdebootstrap15 years ago. Still standing.AD: VPS Price Tracker
Several websites, nginx, php-fpm, postfix, dovecot, opendkim, nsd, unbound, asterisk, vsftpd, wireguard, shadowsocks,
and bunch of "self-hosted" type things: 4get, searxng, quetre, anonymousoverflow, rimgo, redlib, binternet.
I've got 3 vps with a custom scripted master-slave failover system, so it can automatically failover to one of the other systems.
Actually, it's cheaper than $3-5/month. They're around $20/year +/- a few dollars.
Are you hosting public instance?
Yes, basic debloating is delegated to something that's better described as combination of script+tool. Further optimization is done manually (now accelerated with LLM AI).
I'm not really good at C compared to my friends, so I end up using POSIX and python.
Note: they're IOI materials
A public instance for the self-hosted stuff? On my main machines, no, they're private. But I run some public instances separately (307200.xyz). The public instances run on 1gb ram.
My smallest VPS already has 3 GB RAM, but uses less than 1 GB.
Most of the VPSes run exim, slapd, PowerDNS (with sqlite3 backend), PowerDNS Recursor, and lighttpd. Got two VPSes running prosody (XMPP).
Got some simple self-made flask web sites (e.g., mailing list archive with full-text search using sqlite3), a roundup tracker using sqlite3 backend, a phpwiki (using sqlite3 backend) and some PHP scripts (mostly serving content from sqlite3 dbs). I guess the common theme here is that there is a lot of sqlite3 usage.
Ohh, and I do isolate web sites, but not using docker, instead just using bubblewrap (to only let these scripts access what they really need); this way I get the isolation without duplicating PHP/Python/... for each site (everything uses the system packages)
Like a redundant Prosody or two separate instances?
I am running backtogeek.com in 32mb on alpine with 1GB disk, one day I will finish the project and release it.
a semi flat ini driven single binary that uses sqlite and 6 lines of js to run a hacker news clone and an unexposed microblog platform that is broken
TierHive - Hourly VPS - NAT Native - /24 per customer - DE, UK, SG, CA, USA x4, FR x2, AU, PL, NL, JP
FREE tokens on sign up, try before you buy. | Static Hosting Free for life: https://tierhive.com/static-hosting/