Hey! I’m trying to get into self hosting and was wondering what would be possible with a single Pi, at least until I can get more capable hardware.
The servies I’m interested in would be things like a pihole, music server, photos server, a few personal fediverse instances (mainly owncast), a small Matrix homeserver for my friends, etc, etc. Media server but that’s obviously way into the future I think.
While I don’t intend or think I can run all of this on one Pi, I just want to know how much is possible. I’m really thankful for any feedback I may get. My apologies for the noobness if I’m completely wrong about all of this.
One last thing, any recommendations on any other services I should try out as a beginner?
Edit: In hindsight, I really do I wish I asked about the ability of sharing these services with people and how that would affect the load and performance. One of my biggest goals is to have this used by family and close friends.
deleted by creator
No reason to transcode if you have the bandwidth I’ve found, just allow / force direct play / direct stream on all clients
Also I run RAID 1 USB HDDs and honestly they do fine with up to a few people at a time streaming
deleted by creator
Holy hell, thanks a ton! I think I’ll give it a shot then, but also look around a bit and see what else is available. This gets around the 100 dollar range when you factor in a case and some cables. Luckily I have quite a few spare ethernet cords laying around.
You can find a nice pi 4 bundle on ebay for ~100 USD instead of buying a marked up new one. I got a 4GB pi 4B, decent size SD card, and a case with a fan for $90 IIRC.
Also, Linus Tech Tips recently did a video on pi alternatives. There’s a bunch now that pi’s have gotten so popular.
Each project may publish minimum specs. Find what you and add them up. Fediverse instances can require several services and are the most complex thing on your list.
Thank you! The only thing I’d want to host is Owncast upon reflection, which I probably won’t be doing until I have a better setup than I do now.
If they don’t publish minimum specs, you can try running the services in a virtual machine on your laptop to see how much memory they use.
Owncast is very bandwidth heavy. If your net connection doesn’t have a high upload speed you are going to have problems with it.
deleted by creator
How is it bandwidth heavy? Can’t the streamer dictate the bitrate?
Sure, but you need to send to every viewer. It’s not like with Twitch where you send once to their servers and they distribute it to the viewers.
deleted by creator
I started my selfhosted journey with my RPi4 4G and a 4TB external HDD, currently I’am running: jellyfin, *arr stack and syncthing for obsidian. It works great for direct playing media. Also got to learn a lot creating a NFS/samba server, python, docker/podman.
it will get you started if it does not run very well try another thing, have fun!
Fair bit (on a nanopi m4, pi has better ram and ends up being faster than the m4). I ran a matrix server (and a bunch of bridges) and syncthing on it with 4 drives. It wasn’t fast. But it worked. You could consider horizontal scaling for these services by adding more Pis. You can simplify (resource wise) the Pihole by setting up dnsmasq and have the servers it look up be ones that follow the adblock lists you want.
All this:
How do you ensure that your data (files, photos) is backed up when using Nextcloud? I’m very paranoid having all my files lost due to a drive failing.
Restic/Kopia/Borg are popular backup tools, set up a backup to another local drive, and also to online storage somewhere such as Wasabi S3, or Backblaze B2.
So can I just use a RPi that’s connected to 1-2 external HDDs/SSDs and use them as backup drives? Would I have to run them in a RAID configuration or something?
Yep, you don’t need to use RAID unless you want to.
With YunoHost you have built-in backup system, works pretty well.
But where do you store that backup? Is it on your own drives or do you use some cloud storage medium?
You have a lot of options: https://yunohost.org/en/backup
How did you do that?
On my most active Pi 4B I run docker with: Bazarr Doplarr Foundry VTT Jacket Overseer Plex Portainer Radarr Sonarr Syncthing Transmission through VPN
You can do a lot with these little things
Edit: missed an r
I can tell from experience that 10-20 docker containers are absolutely no problem.
The pi would be fine for a lightweight music server (ex. gonic), maybe a lightweight photo app and pihole.
Fedi software generally requires a decent machine, so it’s probably better to use something else; same for matrix.
deleted by creator
I have pi4 4gig. Openmediavault which has SMB shares, then music shares DAAP, DLNA. Then docker, homeassistant, cup print server, trillium notes and kanboard. Review how much you will be using at once, because mine uses only about 1 gig of RAM to handle that load. But you matrix amd other social media servers may have have higher requirements.
Consider some of the Pi alternatives that have a bit more horsepower. I’ve been out of the loop for a bit, but I had a lot of success with NanoPi Neo’s and the Rock64. The Neos are so cheap that I ended up getting 8 of them and deploying my services across them with docker swarm.
Plex and jellyfin ran just fine on the Rock64 I used, but it started to struggle when my library got big. These devices can only really handle one transcode at a time too, that is if you can get HW acceleration to work.
Nextcloud was slow, but also ran good enough. Pydio is a good alternative for general storage and is much faster than nextcloud if you don’t need all the groupware stuff.
Never tried Fediverse apps on them but they will take up a lot of space and memory, the Pi’s might not be able to keep up.
Checkout the awesome-selfhosted list for some links on all the software you can try. Most will have docker containers to make setup and testing easy.
Pihole it of course can do. I wouldn’t especially recommend doing much of anything else with the pi you use for your DNS. Reason being that you don’t want your internet to start lagging because the pi is being overloaded by something else. I know if I disconnect my pihole the impact on internet speed is significant.
Servings up files should be fine (but check USB and ethernet speed), I wouldn’t use a pi as my goto for streaming media though (that said I haven’t tried it). I’d be skeptical about federated services as the amount of traffic and therefore processing can increase a lot once you connect to more instances so you could find it works fine for the first days but then gets more and more overloaded. Turn off federation and it would run fine but then what’s the point? But I’ve only tried hosting lemmy, I don’t know how others compare.
For sure. My old pi v2 became a PiHole when I moved on to later versions and it’s just been quietly doing it’s thing for … I don’t know, 6 years now?
Would it be better to get a Pi Zero for Pi Hole instead if that’s the case? Thanks a ton for the info!
Intuitively, I think that the most difficult thing to host may be the owncast. Video is a pretty taxing. One nice thing is that Raspberry Pi 4s have video codec support built-in which may help.
For Matrix, I recommend looking at Matrix Conduit, it’s great for low power systems. I’ve got it running with like 3 other services on an Intel Atom D2550 which according to my quick search is about half as fast as a Pi 4.
I’d definitely recommend looking at nextcloud, it is great for a variety of tasks including music and photos.
I run diet pi on all my raspberry pis, it’s slimmed down and logs to RAM. it also can install lots of different software it of the box.
My main hesitation on running anything mission critical is the reliability of sd cards.
They are pretty great for anything that can be easily replaced imo. Thinking octopi, pihole, pivpn f.ex.
I always recommend getting a small NVMe SSD and a reader for like $50-60 and booting off that. You’ll almost never see a failure.
Also disable logging to the SD card to reduce r/w.