Home Labs and self hosting.

Home labs and Self hosting.

This is the first post on my new blog and if your reading this, I have taken the first steps to moving away from a web host, and moving all my stuff back into a home lab. I’m embarking on this adventure for a couple of reasons.

  1. It will save me some money.
    • I’m currently spending around £15 a month on web hosting/email hosting. Its not a massive amount of money, but its still an outgoing.
  2. Home internet connections are getting to be fast enough to allow hosting of simple sites at home.
  3. It will allow me to try out some new technologies and play with things like Kubernetes.
  4. It will be good fun.

Starting Hardware

So all this work was originally going to be done using a fancy Turing Pi 2 board, this idea was scuppered by the fact Raspberry Pi 4 compute modules, are currently rarer than hens teeth, I decided to attack the situation with something else.

This left me with a problem, the reason I was interested in the Turing Pi 2 and the Pi4 compute module was that it was cheap (ish) and had a low power requirement. With the current cost of electricity the days of chucking a couple of old DL360 G10 in the garage and running them all the time are way gone. At the same time I still need something with some power.

So this blog, and everything home lab/hosting related will be running on a little mini computer from Bee Link. The model I chose is the Mini S, which comes with the following specs.

  1. Intel 11th Gen 4 Celeron N5095 (2.9Ghz)
  2. 8Gb DDR4 Ram
  3. 128Gb SATA3 m.2 SSD
  4. 1Gb Networking
  5. Wifi 5

All in a package that measures 102mm x 115mm x 41mm.

not a bad looking case.

So far the machine has been great, and has handled everything thrown at it.

Current status

So this is the first weekend working on this project, and so far I have achieved the following.

  1. Deployed Ubuntu 22.04 onto the Beelink device.
  2. Setup DDNS to allow me to self host this website.
    • Blog post on how to do this coming soon.
  3. Moved my nameservers to point to the new DDNS service.
  4. Setup this website using Jekyllrb and Caddy.
    • Still need some automation, and to check the site into git and publish changes.
  5. Punched the required holes in my external firewall.
  6. Setup PiHole for network wide ad-blocking.

What’s left.

  1. Move my email service from my external web host, to something self hosted.
  2. Find a nice theme for the blog.
  3. Look at self hosted analytics platforms to avoid using google analytics.
  4. Finally cancel my external webhosting contracts.
  5. Setup Teleport to allow access to my internal machines remotely.
  6. Lots of other things :D

Catch you soon. Steve.