view the rest of the comments
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.
-
No spam.
-
Posts are to be related to self-hosting.
-
Don't duplicate the full text of your blog or readme if you're providing a link.
-
Submission headline should match the article title.
-
No trolling.
-
Promotion posts require active participation, with an account that is at least 30 days old. F/LOSS without a paywall has exceptions, with requirements. See the rules link for details. Tags [CBH] or [AIP] are required, see the links in Rule 8 for details.
-
AI-related discussions and AI-involved promotional posts have additional requirements for tagging, as noted in Rule 7 and the AI & Promotional Post Expanded Rules post, and find example disclosures here.
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!
You'll need a public IP. CGNAT won't do, unless you'll also add Tailscale (or such) in all your client devices (which might actually be OK).
Grab an old laptop from a junk heap. Ask around for discarded computers. Possibly get an old dead Android (possibly with a broken if barely functional screen) and install Termux. Buying stuff is not green. A laptop with a 5-second battery life, completely broken screen and nonfunctional keyboard will be perfectly good for self-hosting - temporarily plug in an external screen + keyboard, until you get SSH up and running. The rest of access will happen over SSH anyway.
Install your favorite Linux distro (I like NixOS. Debian would be a good basic yet powerful choice).
Set up a webserver (nginx is a solid choice). Serve some static files in LAN.
Make your webserver accessible to the internet. Get a TLS certificate for it, for free, from Letsencrypt. Host a blog. Set up Vaultwarden and import existing passwords into it.
At this moment, your possibilities widen up - many, many services are commonly set up behind a reverse proxy (nginx the webserver is going to decrypt the TLS, then proxy the plaintext connection to your services, so your actual service doesn't need the hassle of TLS encryption). For example Nextcloud.
Set up a Snikket server and install Snikket app in your smartphone (Dino works well on Linux). Tell your significant other, or family, or the closest friend that this is a fallback communication channel in case your main one ever goes down. Set up a STUN/TURN server and start video calling each other.
Email is a hassle. I self-host it, along with an authoritative DNS server and several other things, but it's not for the faint of the heart.