A few months ago I decided to self-host everything for my software house instead of paying for cloud infrastructure. Here’s what’s running on a Raspberry Pi 4B (4GB) at home:

Astro static site + nginx Full mail stack (Postfix + Dovecot + Roundcube) in Docker MariaDB with automated backups GoAccess analytics with custom Python bot/human separation Dynamic IP blocklist generated at every deploy Certbot managed on a separate Orange Pi Zero 3 (HAProxy + SSL termination)

The Orange Pi Zero 3 as a dedicated HAProxy node was the best €25 I spent — SSL overhead completely offloaded from the Pi, all subdomains routed through one config, clean network separation between “what faces the internet” and “what runs the services.” Storage: all boards boot from SSD via USB3. No SD cards in production. The ISP situation: Eolo wireless, 20Mbps down / 100Mbps upload. Yes, upload is 5x download. For a web server that’s actually ideal. Real stress test — June 22, 2026 A post on r/italy hit 20k views in 24 hours. Numbers that day:

555 human visitors (vs ~180 daily average) 151 unique IPs 72.2% return rate 9.98 MB bandwidth 0 downtime 0 errors in the mail stack

PageSpeed from Google’s infrastructure:

Desktop: Performance 100 / SEO 100 Mobile: Performance 97 / SEO 100

No CDN. No Cloudflare. No edge nodes. Just nginx on a Pi. The honest limitations:

Single point of failure — yes, if the Pi dies the site goes down Mail deliverability on residential ISP is hard (Brevo relay helps) No redundancy — we run backups, not replicas

All traffic data is live and public: stats.lake8.dev/geo.html Happy to answer questions on any part of the stack.

  • nexttech@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    6 minutes ago

    Hello !

    This is quite the setup !

    I had to put your post in an ai (claude) so that i can understand what you were saying, but it’s still amazing!

  • ropatrick@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    45 seconds ago

    I like posts like this (certainly the spiffy world map looks like you are in a movie!), and I like the self hosting idea, but here’s the issue I see with self hosting stuff…

    Its so complex. To me its bordering on inaccessible for the regular user. What you have described is very technical, and I see this all the time in the self host section; very cool looking dash, doing cool stuff, but then the description is like its literally in a different language. I’m usually lost before I have read three lines.

    In your post, I’m actually not even sure what you have built. Mail server? Website? I’m fairly techie but I find it hard to understand. Is “software house” your business?

    Its great and I commend your work, but its mind boggling and my overarching feeling when I see these posts is usually: “damn, way too complex, I wouldn’t know where to start”.

    Thanks for the post however and for taking the time to document and answer questions. 👍🏼

  • tidderuuf@lemmy.world
    link
    fedilink
    English
    arrow-up
    10
    ·
    4 hours ago

    Last time I tried something like this my ISP cut me off by sending me an email after they cut me off about how if I am running a business website it has to be through their business plan not residential plan.

    I never saw the email because they cut me off before I could ever view it.

    I wasn’t even hosting a business site but it was for a wedding announcement and RSVP shit.

    Little guys have a hard time these days.

    • DenimFootpath@lemmy.dbzer0.com
      link
      fedilink
      English
      arrow-up
      6
      ·
      3 hours ago

      What if you hid your traffic by using a wireguard VPN like mullvad as your exit node? Your ISP wouldn’t be privy to the services you host all they could see is that your using wireguard or a vpn

    • irmadlad@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      4 hours ago

      Was this a well known ISP or a local ISP That’s weird. Did they have a policy against that? Even when I didn’t have a business account with my ISP, they didn’t seem to care,

  • irmadlad@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    4 hours ago

    Awesome! You just started and you’ve accomplished all of this? That’s respectable. Damn site better than when I first started. Git sum!

    • Tommy2970@feddit.itOP
      link
      fedilink
      English
      arrow-up
      4
      arrow-down
      1
      ·
      5 hours ago

      Inbound: sender → port 587 → Postfix → Dovecot → Roundcube Outbound: Postfix → Brevo relay → recipient Thk