Guides
Welcome to my guides!
You'll find various bits of useful information here. I've written this for myself, as these particular apps are either
Annoying to configure
Not well documented online or
Are stable enough for me to forget how to configure them, but not stable enough to last forever (looking at you Pterodactyl)
A piece of advice,
You will never have 99% uptime and people accessing your homelab are not entitled to your time. If your Plex server is down, they can use Netflix. The 'luxury' of paying money for those services is uptime and support. Don't make your homelab your second job.
How this documentation is written
Sectioned documentation
We're all busy and can't always dedicate 3 straight hours to 1 task.
Where logical, I have split my doco into multiple pages and a page should be completed in a single sitting. I've tried to keep each page to less than 30 minutes of work.
Docker Compose env file
As most of these guides will be reference my live docker compose files, they may change in the future. I will not be providing env files as what is correct today may not be tomorrow.
Where possible, I have provided default data, eg ${WEBPORT:-5000}
If you are using my live data and have issues with variables dropping, I would recommend starting here. I would also recommend copying mine into your own GitOps deployment
The best way to get an env file data is to
Copy the entire compose to clipboard
Paste into an AI (Gemini seems pretty good at this) and ask them to generate the env file
Errors
If I'm expecting an error to occur, I'll write it into the doco. Otherwise, refer to the troubleshooting section on the left and/or Google.
Best Practice
Here are some basic things to consider for your Homelab
Password vault
Save all of your data into a password vault - a lot of API keys cannot be re-viewed after being generated and rolling them will break any services that use them
SSH keys allow for password-less authentication, and the device connecting requires the private key
Use an external party for authentication
I think this one one may be a bit controversial. At the end of the day, I trust Google, Github, Facebook etc. to have better security standards than an authentication provider written by someone as a hobby.
Don't store important data on your homelab
Another controversial take, but this one comes with a story.
Previously I had hosted Bitwarden as a docker container in my homelab. I ended up deciding to pay the $10ish a year to support the devs and shifted my vault over to their cloud version.
I had forgotten to update an old device pointing at the local version and when I accessed that device it couldn't authenticate. I did some digging and realized that the front-end of the container wasn't loading. The container and its database had died some time ago and I didn't have a backup to restore from.
I was lucky as I had already shifted my data away.
Don't force other people to use your homelab
Your homelab is your hobby - not everyone else is going to want to use it. Sure, make it available, but be aware of what may go wrong if something breaks. You don't want to have a drive die and then lose all of your families photos.
Last updated