add presentations
This commit is contained in:
109
presentations/self_hosting_presentation.md
Normal file
109
presentations/self_hosting_presentation.md
Normal file
@@ -0,0 +1,109 @@
|
||||
# Idea
|
||||
|
||||
## Abstract
|
||||
|
||||
Ever find yourself Googling "how do I build a home server" only to get
|
||||
overwhelmed by enterprise-grade documentation? Welcome to our journey from
|
||||
confused beginner to building a home server that's actually useful.
|
||||
|
||||
Join us as we walk through real-world projects that solved actual problems:
|
||||
backing up family photos, hosting private Git repositories, running local AI
|
||||
models, managing home media, and yes—even running multiple Minecraft servers on
|
||||
a single box. We'll explore hardware choices, operating systems,
|
||||
containerization vs VMs, and the pain points that motivated each decision.
|
||||
|
||||
This isn't a theory-heavy presentation—it's a story-driven exploration of
|
||||
building infrastructure for real people with real needs. When you're done,
|
||||
you'll leave with a roadmap for your own server that balances automation,
|
||||
redundancy, and the "I just want this to work" factor.
|
||||
|
||||
Some prior sysadmin knowledge required. All projects are from personal
|
||||
experience, with stories about what went wrong and how we fixed it.
|
||||
|
||||
## Structure
|
||||
|
||||
"I'm lazy, I don't want my family to kill me, and it works"
|
||||
|
||||
1. I want this in my house
|
||||
2. I want to connect outside my house
|
||||
3. I want my friends to connect
|
||||
4. I don't want this to go down
|
||||
5. I want to recover if there's an error
|
||||
6. My house burned down, what now?
|
||||
|
||||
## Thoughts
|
||||
|
||||
Give 2 ideas per section. First for "I can't let this break my family will kill
|
||||
me". Second for "I have an understanding partner who is my cat and won't care."
|
||||
|
||||
Story driven presentation
|
||||
|
||||
I have decided to make a strong home server. Where do I even start?
|
||||
|
||||
Hardware: you find a box (old laptop, rpi) you're set.
|
||||
|
||||
- Operating system (proxmox, truenas, fedora, arch linux)
|
||||
- Alex: truenas apps
|
||||
- Reese: Fedora, osbuild
|
||||
|
||||
1. Install native app (npm, pip, apt, dnf, etc)
|
||||
2. Containerized (kube, docker, podman)
|
||||
3. VM (vm, pick one or two)
|
||||
|
||||
- Ingress (nginx, caddy, haproxy)
|
||||
- Backups (rsync, borg, btrfs send, zfs send)
|
||||
|
||||
1. I want to install a new app while I'm at friend's house
|
||||
1. Truenas web portal (app page, both official and community)
|
||||
2. VPN and I need access to my computer
|
||||
2. I want to check my server status on my phone (updates, disks, memory pressure, error logs, services running)
|
||||
1. Truenas web interface
|
||||
2. Cockpit web interface
|
||||
3. I want to add more storage
|
||||
1. Truenas ZFS storage pools
|
||||
2. BTRFS pools
|
||||
4. I want to install a new alpha app without much support
|
||||
1. Truenas custom docker compose images
|
||||
2. Fedora clone and run (in a VM for style)
|
||||
5. I want to backup my photos
|
||||
1. Google Photos: don't use git, images aren't meant for git
|
||||
2. **Immich, with backups (tell stories about losing my image data)**
|
||||
6. I want a local copy of my code
|
||||
1. Github
|
||||
2. Gitea/Gitlab (talk about that transition)
|
||||
7. I want private document editing
|
||||
1. Google drive, Obsidian (forces use of markdown as my standard)
|
||||
2. VSCode + pandoc (commit markdown files as your documents)
|
||||
3. Nextcloud (Collabora)
|
||||
8. I want a local, offline LLMs
|
||||
1. llama.cpp, stable diffusion cpp, bifrost
|
||||
2. Ollama is switching to cloud based models
|
||||
9. I want to watch media I own
|
||||
1. Plex boi - I know that ruffles some jimmies. Give example: add letterbox support into Plex.
|
||||
2. Jellyfin if you're cheap
|
||||
10. I want to know when something goes wrong
|
||||
1. Uptime Kuma!
|
||||
2. Truenas sending emails if there's an error
|
||||
3. Fedora requires a custom solution.
|
||||
11. I want "reasonable availability"
|
||||
1. Truenas hits 90%+ availability. Updates take it down for reboot (5-10
|
||||
minutes). Disk failure requires full shutdown, disk swap, and rebuild.
|
||||
This could be half a day.
|
||||
2. Fedora hits 90%+ availability. Updates take it down for reboot (<1 min).
|
||||
Disk failures can be ignored by rebalancing. Disk failures still require
|
||||
full shutdown and resilver. This can take half a day.
|
||||
12. I want to host multiple minecraft servers (SRV records)
|
||||
1. AWS Route53 for automating SRV records.
|
||||
2. Pihole is in the territory of making your family mad
|
||||
13. I want to automate my house
|
||||
1. Home Assistant (raspberry pi or green)
|
||||
14. I want backups of all my data
|
||||
1. No backups is an option
|
||||
2. Local weekly backups to usb drives via Truenas data replication
|
||||
3. Borg backup via CLI or Pika.
|
||||
4. Full disk backups, app directory backups, hybrid model
|
||||
5. Backblaze and S3 integration for Truenas
|
||||
6. 3 copies of your data, 2 different media,1 off site.
|
||||
15. I want a private VPN
|
||||
1. Tailscale, moved from wifiman, also moved from pivpn
|
||||
2. unifi wireguard server, rawdog wireguard on a pi
|
||||
Reference in New Issue
Block a user