Hey yall, I want to get into self-hosting. I want to start from hosting on a raspberry pi, and I am just wondering if yall have any recommendations (I’ve never hosted anything before, but have experience in linux and programming). Sorry if it’s bit of a stupid question.
Pihole is easy and light enough. I used to host Transmission (transmission-daemon) on a 3B+ and it worked alright for seeding around 300-500 torrents. FreshRSS also worked alongside.
Pihole my is choice too. It’s pretty good, but for some reason video ads still get through even off YouTube? Is it possible to block them?
uBlock Origin gets rid of every single one.
You are not wrong, but uBlock needs to be installed on each device and only works on the browser, while pihole blocks adds across the whole network for all devices.
I have pihole but still use ublock on my personal computer
I did recommend Pihole in my original reply. But there’s no way to block Youtube ads using it, as was being asked in the reply to my original reply.
Ah my bad mate, I didn’t notice you were the same person and the way you wrote your reply made me think you misunderstood the advantages of each and we’re recommending to use ublock only
I have started installing it when setting up new workstations at work.
You can’t do that with Pihole as the ads come from the same domains, and basically need a browser extension or an app with a built in equivalent.
If you’re in the UK though, it does block the ads on All4 which was a nice surprise. It even works for the TV app.
I am in the UK and that’s really useful to know. Thanks
Also blocks all the ads on itvx which was another pleasant surprise
YouTube ads don’t come from a separate server. They come in the same way as the video. They pretty much need to be filtered out at the player end (e.g. browser plugins).
Pihole blocks ad domains. YouTube ads are still from youtube.com, so you have to block them on the browser level with something like Ublock Origin
You can block ads on your computer with basically any browser plugin adblocker.
If your phone is Android, using an app called ReVanced, which is a modified version of the official YouTube app that essentially gives you all the Premium features (including adblocking and picture-in-picture) for free. You can even sign in with your Google account and interact with playlists, comments, etc.
It has to be side-loaded, of course, since Google wouldn’t allow that in the Play Store.
Use firefox with uBlock Origin to get rid of YouTube ads.
Pihole is the best starting point in my opinion, helped a lot of my friend to get started !
Change DNS on hosts, not on router.
Goes against the spirit of self-hosting but for some stuff(Email, DNS, Passwords), I just SaaS it out. As much as I love my lab, nothing self-hosted in my prod environment is critical.
Exactly, I can barely maintain a media server I really don’t want to be responsible for my passwords and photos. There are secure alternatives that are private and open enough for my needs…
I haven’t found anything software-wise (self-hosted or SaaS) that I’m satisfied with for photos. Thankfully, those are easy enough to backup and aren’t used day-to-day. What have you tried, and do you like/dislike of each?
Have you looked into Immich yet? I am really liking it and the contributors are very passionate
Just checked and it’s one of my many Starred repos. Thanks for the vouch though, kind of gives me a “short list” to review now.
At first I tried some self hosted solutions but I didn’t like anything, eventually I landed on ente.io/ which I really like.
It has a lot of ways to import your photos, really nice mobile and pc (windows, Linux, and Mac) apps that can automatically upload your pictures in the background, the devs are really responsive (there was a bug with one of the importers so I opened a ticket and I got a lot of help in order to debug the issue and solve it).
The only thing that I don’t love is that while the clients are all open source, the back end isn’t because they claim they are too small of a team to keep it both open source and secure.
You should have your own DNS, but I don’t trust selfhosting passwords and emails either
I’ll use split-DNS for some things internally, but most things just go through NextDNS lately.
deleted by creator
You can change the DNS on your personal devices instead of changing it on the router.
You can make an HA cluster from 2 or 3 pies. One node goes down, the other takes over. Or go the docker swarm road.
@joshuaacasey @Krafting I have two pihole instances running at home as primary and secondary DNS servers. They are both on separate nodes and that helps to make sure the wife and kids are not without internet when I am screwing around in my homelab.
This is why I only have personal devices running through it, the rest of the house is just normal DNS.
I’m hosting https://www.home-assistant.io/ on raspberry pi’s.
I just started with HA as well and it’s a massive rabbit hole haha. So far set up thermostats for rooms, motion sensors with smart lights and integration with Frigate for my security cams. Also set up a tablet with HA which displays all our photos from the NAS as screensaver.
Add outside environmental conditions from your national provider and purpleair, and you can figure whether it’s better to run HVAC or open a window. I have an aspirational project to motorize some windows.
deleted by creator
Depending on what method you use, you would either have to change the configuration for port mapping in a file or when you run the container. It’s simple enough, and you should be able to figure it out quite easily. If not, help for Docker related stuff is never far away.
For the cost of a rpi, just get actually capable hardware. Once you actually get anything running you’ll wish you had real hardware.
I’ve been leaning this way lately. From a cost/capability standpoint, RPis were easy to justify when they were ~$30, but not as much at their current inflated prices unless you have specific power consumption and form factor requirements. Used/refurbished Dell thin clients and MFF PCs can be had for $40-100, ranging from fanless systems with low-power Atoms and Celerons to full-fledged desktops with Core i-series CPUs, all with memory and storage included more often than not. I personally just picked up a Dell OptiPlex MFF with an i5-9500T, 8GB RAM, and 256GB SSD for $100.
Refurbished thinclients really are fantastic if you don’t specifically need a pi for the formfactor. I got a bunch of Fujitsu S920 with 4GB RAM for roughly €35 a piece and I’ve been pretty happy with them so far.
What kind of hardware, with a similar price point to the rpi, do you think of?
Refurbished thinclients can be had for about €35. I got a few Fujitsu S920 with 4GB RAM and 8GB MSATA for around that price per piece.
Datasheet: https://content.etilize.com/Manufacturer-Brochure/1036232289.pdf
This reminds me of the old “build a gaming pc for less than a console” thing was popular for a while.
So let’s assume a $90 raspberry pi (someone really splurged here)
- $90: case
- $0: cpu, get used from a friend
- $0: motherboard, get used from a friend
- $0: ram, get used from a friend
- $0: power supply, steal from work
You can drop the case and just use a cardboard box, which would allow you to afford storage. I’m just going to assume you boot from a usb and keep everything in memory.
I have a refurbished dell that I got for ~$150-$200, the cpu is an i5-8500t. I think those are great deals, would absolutely recommend them for a home server. As your needs grow, you can even replace the RAM inside later.
Agreed. I picked up the M910q for $100 including shipping from a corporate sell out on Ebay. It does everything I need; and has the ability to do so much more.
One suggestion might be to load a Debian build on it and use it for docker containers. With docker containers you can do so many different things. I have a PI 4 and it does all of the following:
PiHole - For blocking ads. (Everyone should have one of these)
OpenMediaVault - For NAS
Portainers - For loading docker containers
Radarr - Downloading Movies
Sonarr - Downloading TV Shows
Tautulli - Monitors my plex server
Overseer - Allows members of my plex share to request content.
NZBGET and Real-Debrid Torrent Downloader Clients - For downloading content from usenet or real-debrid.I have one Pi4 running all of these as docker containers. Have fun!
Seconding - you can actually squeeze a surprising amount of use out of a Pi4 running Docker.
I have an 8gb one with ELK stack in docker compose, and it’s struggling to say the least, even without traffic.
Any chance you can point to a good tutorial for setting up these apps on the RPi?
Let me start by saying I hope you enjoy this stuff. Some of these can be a bit much to setup. I personally love this stuff so for me although it can be challenging it’s fun.
I started out by installing OMV 6 - Open Media Vault. https://www.addictedtotech.net/how-to-install-openmediavault-6-on-a-raspberry-pi-4/
That’s your starting point. From there you can install “Portainer” from the OMV extras. Portainer is where you will put all your docker containers.
Here’s another script you can use to install several of these if you want to do it without OMV or docker.
Amazing, thanks so much for sharing this additional info!
honestly it is good to start with and for controlling machines like an array of 3d printers but a dumpster dive laptop will be faster. RPI4 is quite old now.
with that done:
- jellyfin
- smb server
- syncthing
- tftp with wake on lan / clonezilla to backup your other machines
I think you’re underselling the RPi a little there. I have an 3B+ which is running a few services well and it’s being undervolted so I could squeeze some more performance out of it with a better power supply. My Pi is currently running:
-Pi-Hole -FreshRSS -WireGuard -Gluetun -Libreddit -Deluge
is libreddit going away with the API changes?
jellyfin
How good is the performance of that on a rpi4? Does it work for transcoding videos?
It doesn’t. Not well. And for larger files, even on cable connection without transcoding performance is god awful, sometimes it doesn’t play, or stutters or you get awful audio desyncs. Don’t do jellyfin on rpi
Are you talking about 4k files? Because I have been running Jellyfin on my pi400 for the past two years and I’ve not had those issues at all. My content is 1080p max though.
Have you checked if those files are being transcoded? This will depend on the clients used and the codecs supported. I use mine mainly to stream anime at 1080p, the files I get from my current source don’t trigger the transcoding (Direct Play); while some older files I had used unsupported codecs and required the transcoding.
Yep, 4k, sometimes with HDR. It was happening mostly on those. But 1080p files were also sometimes affected
I ran JF for about a year on a Pi 2B. Transcoding off at the server. No issues at all playing any file using Direct Play - including large 4K rips. I moved to an Odroid C2, again, absolutely no issues with playback.
If you’re seeing trouble with Direct Play I’d bank on it being network or storage related rather than the power of the Pi. E.g. the network hasn’t got enough throughput to serve the files. In Direct Play you need very little in terms of server resources as it’s handed off to the client.
Dunno, maybe it was storage. I had a SATA to USB3 drive hooked up to it. Couldn’t have been network. I got some old office PC with i3-6100 for free, hooked it up to the same cable, same router port and everything is working mostly smooth now, on similar drive but connected directly to SATA
it ever performs awfully slow on my secondary computer with i3 cpu.
PiVPN is a simple home VPN solution that’s worth exploring.
Is you are interested in smart home/home automation Home Assistant is an open source home automation platform and makes a great Pi project.
I’ve recently set up pivpn with duckdns. Are there any security related steps I should take or is the out of the box config good enough?
Pi Hole is a good start. If you’re into movies and TV shows, sonarr /radarr/bazarr is an option
Would highly recommend to use docker images from https://www.linuxserver.io Except pi hole, I’ve dockerized everything. So much easier than installing stuff as every application does that differently.
If you have a 3d printer also check out Klipper, Octopi etc. I run mine off a pi zero 2 and it is a leap in performance over the stock board on the Ender 5.
Yeah OctoPi is a game changer. Take it one level higher if you have several 3D printers and run OctoFarm. Now I just click a button and my multi-piece print is distributed to my print wall.
Some things that haven’t been proposed here might be to use it as a nas. If you want to access your films and shows from outside it’s easier to set up Plex instead of jellyfin for now. You can use it also as a steam machine streaming from the pc to the tv, or as Kodi/Libreelec mediacenter to make your tv smart
deleted by creator
use it as a nas
If you do this, whatever you do make sure at the very least you get NAS-grade hard drives. But preferably, use some sort of RAID system as well.
I just lost years worth of data because I used a consumer external HDD as my NAS drive connected to my RPi, and I’m not sure yet if I’ll be able to get it back.
for starting out any existing hard drive is enough though
Even with enterprise grade and RAID set up, some sort of backup would help.
Restic with backblaze is easy enough to set. I personally use this and an encrypted external HDD.
Pihole is a good start, though I personally use my Pi 3B+ for printer server over WiFi since I have a dumb Epson printer.
I have two Raspberry Pi (4 / 2) and I use them to selfhost:
- AdguardHome (two instances)
- HomeAssistant
- NextCloud
- Forgejo
- VaultWarden
- NTP server
Those are all as Docker services so I can easily switch to new devices in case I need to. All of them work like a charm.
My list for my raspberry pi 4 (4 GB):
- Nextcloud (synced cloud storage, like Dropbox; it can do more with plugins but this is all I use it for)
- FreshRSS (RSS reader)
- Wallabag (read it later, like Pocket or Instapaper)
- Gitea (git project hosting like Github; admittedly I don’t really use this one much)
If it’s a Pi3b+ - you can actually host a vanilla Minecraft server on it, with some heavy optimization to reduce memory usage and no more than 4 players online. It’s a fun experiment, however impractical.