Home Server Build ⚓17 Sep 2017
I’d been planning to run my own home server for a while, and this culminated in a mini-ITX build recently. The exact part list is up at https://in.pcpartpicker.com/list/krc8Gf.
In no particular order, here were the constraints:
- The case should be small (I preferred the Elite 110, but it was unavailable everywhere).
- Dual LAN, if possible (decided against it at the end). The plan was to run the entire home network from this directly by plugging in the ISP into the server.
- Recent i3/i5 for amd64 builds.
- Enough SATA bays in the cabinet for storage
The plans for the server:
- Scheduled backups from other sources (Android/Laptop)
- Run Kodi (or perhaps switch to Emby)
- Run torrents. Transmission-daemon works. Preferably something pluggable and that works with RSS
- Do amd64 builds. See https://github.com/captn3m0/ideas#arch-linux-package-build-system
- Host a webserver. This is primarily for serving resources off the internet
- Host some other minor web-services
- A simple wiki
- Caldav server
- Other personal projects
- Sync Server setup. Mainly for the Kindle and the phone.
- Calibre-server, koreader sync server for the Kindle
- Now looking at libreread as well
- Tiny k8s cluster for running other webapps
- Run a graylog server for sending other system log data (using papertrail now, has a 200MB limit)
No plans to move mail hosting. That will stay at migadu.com for now.
I had a lot of spare HDDs that I was going to re-use for this build:
- WD MyBook 3TB (external, shelled).
- Seagate Expansion: 1TB
- Seagate Expansion 3TB (external, shelled)
- Samsung EVO 128GB SSD
The 2x3TB disks are setup with RAID1 over
btrsfs. Important data is snapshotted to the other 1TB disk using btrfs snapshots and subvolumes. In total giving me ~4TB of storage
kodi-standalone-service on boot. Have to decide on a easy-to-use container orchestration platform. Choices as of now are:
- Docker Swarm
Most of these are tuned for multi-host setups, and bring in a lot of complexity as a result. Looking at Portainer, which seems well suited to a single-host setup.
Other services I’m currently running:
elibsrv. Running a patched build with support for ebook-convert
ubooquityfor online reading of comics
If you’re interested in my self-hosting setup, I’m using Terraform + Docker, the code is hosted on the same server, and I’ve been writing about my experience and learnings:
- Part 1, Hardware
- Part 2, Terraform/Docker
- Part 3, Learnings
- Part 4, Migrating from Google (and more)
- Part 5, Home Server Networking
- Part 6, btrfs RAID device replacement If you have any comments, reach out to me
Published on September 17, 2017 in homeserver,archlinux,hardware