What’s up, what’s down and what are you not sure about?
Let us know what you set up lately, what kind of problems you currently think about or are running into, what new device you added to your homelab or what interesting service or article you found.
Personally I’m finally reaping the fruits of my labour and enjoy my stable homelab without doing much. One node went down recently and the other took over until I restarted so I was not in a hurry to fix things. Enjoying family time and only running updates that aren’t automated (yet). I’m about to dig a bit deeper into logging, probably setting up central log collection like Loki at some point, but not yet.
Realized today that borgbackup failed for almost 2 months straight on one of my servers (was a simple case of a lock being stuck). Finally setup push notifications via Pushover to notify on success/fail.
Healthchecks is incredibly nice for this kind of thing, it’ll notify you if it doesn’t receive a ‘success’ ping on whatever interval you specify.
I use it for all my Restic backups.
Yeah that sounds even better. What service do you use?
Backblaze B2 for storage, and I host Healthchecks myself at home.
This is worth it. Had this happen on OS backup. Lost my data. Notifs should be default.
I wanna get into it but man, the mountain of knowledge I need to even understand what people are talking about is hard to climb. I’m trying to just get some stuff running in docker and it fails to launch and I’m like… How?! Isn’t that the whole point of docker lol. Baby steps I guess
I’ve learnt it from scratch in my week off, spending 2 or 3 hours on it every night for a week (although this might be underselling it as I had become familiar with desktop Linux over the past year and had a superficial idea of Docker containers with my Synology NAS). But still it’s not as big a deal as you think once you find some good resources. I’m going to comment about my setup after this in this thread… Have a look.
Main resource that helped me was Marius Hosting and ChatGPT got me out of trouble when I got stuck by deciphering logs for me when things didn’t work.
Thanks. Yeah I’m just trying to work at it slowly in my downtime instead of just watching YouTube all night.
I felt exactly the same when i started - the learning curve is real! Try TrueCharts.org or linuxserver.io for reliable docker templates with good docs that actually work, saved me so much troubleshooting headache.
Thanks will do!
Check out Cosmos, I struggled piecing things together but when I restarted from scratch with this as the base is has been SO much easier to get services working, while still being able to see how things work under the hood.
It’s basically a docker manager with integrated reverse proxy and OpenID SSO capability, with optional VPN and storage management
Im at the level where I don’t know what SSO means. I can follow instructions to change a DNS. But what a DNS actually is I don’t know. Which is fine, until I need to work out what’s broken
SSO is “single sign on”. DNS is “domain name service”, which is just a way to turn a hostname (like www.google.com) into an IP address. It’s sort of like a phone directory, but for the Internet.
SSO is single sign on, so you don’t need individual username and password for every service. It’s a bit more advanced so don’t worry about it until you have what you want working properly for a while.
DNS is like the yellow pages of the internet - when you type www.google.com your computer uses a DNS server to look up what actual IP address corresponds to the website name. The point of Adguard or pihole is that when a website tries to load an ad your custom DNS server just says it doesn’t recognize the address
Oh like a custom yellowpages, sick!
It’s messy. Dockers superpower: You can write a crazy ass python application that needs dozens of dependencies and weird software configured. You put it into a container, you can update and publish the container with a single script call. Other people can install that, set some variables and not have to install the dozens of other pieces of software. They also don’t have to worry about updates.
But that’s not to say you don’t have to worry about networks, storage and ports.
Then the simplicity of the configuration of containers depends upon the person that made the container. Maybe they wanted to be very flexible and there are dozens of things you need to set. Maybe they didn’t include the data store internally in that container and you need your own data store in another container.
Are you doing things through docker compose? If so, feel free to PM me or reply here with your compose file and I’ll help as best I can
Sometimes you just need to start small and not worry about over complicating things. I started my journey in 2011 running Plex on a crappy laptop
Docker should be trivial to run. Hopefully it gives you some useful messages in the logs.
Found out Ghost 6.0 is out today and now it supports ActivityPub. It’s time to set up a new blog I’ll never write once more!
Oh exciting, finally!
Realized last week that my fail2ban settings are too strict – I get banned immediately if I visit my funkwhale (music server) domain without being logged in. In fact, I think much of my “downtime” might have actually just been me banning myself for 15 minutes now and then…
I was thinking about getting rid of Grafana, which is overkill for my server, and replacing it with Logdy this weekend, but didn’t get around to it.
I installed a new server at home and went with NixOS. It looks super cool but it takes so much time to learn everything. The only thing keeping me from going back to Debian is how easy it was to permanently mount drives (and save a configuration for any future install or mishaps).
(I.e. mount,
nixos-generate-config
,nixos-rebuild switch
and done!)NixOS […] learn everything
I don’t think it’s possible to learn everything for NixOS as a casual user / admin. It’s massive. I was luckily able to sneak a NixOS project into work which gave me some paid time on the topic. But there’s always room to learn more about it. Which is a good thing - by its nature, it’s just more powerful than conventional distributions.
More powerful = more mental burden and capacity used to know how to run and manage its unique syntax and structure.
Sincerely NIX user daily. Switching away from nix and off to fedora kinoite.
You might have some luck with Suse, their Yast configuration is very easy and was stable for years for me. Now I’m running on an M1 Mac mini which was more of a pain than a regular setup for sure. Unfortunately the Linux support just isn’t there yet.
Another glorious day of not having to worry about my nice and stable Debian server. It runs on an old Dell thin client I got on ebay, which isn’t much, but it gets the job done.
Recently set up my own nextcloud instance!
Nextcloud AIO?
I looked into VyOS to replace my main firewall/IPS system (IPfire) with, as I would like to switch to running it in a VM, which is not recommended with IPfire. Seems pretty good so far with the new gratis semi-stable Stream releases.
And I set up Unified Push notifications with my Ejabberd server. Works great.
Opnsense is also great, and has a webUI for easier setup.
That is what I started with originally, and I don’t want to go back. The WebUI is super convoluted and for anything other than the basics it does more harm than good in my experience… and well, FreeBSD is just not my thing.
Any particular reason you are looking for a virtualized VM? Just to be less reliant on a single piece of hardware?
That and power savings, since I have sufficient capacity to run it on one of my main servers with an extra NIC to pass through.
My homelab has been mostly on autopilot for a while. Synology 6 bay running most lighter weight docker stuff (arrstack, immich, etc) and an Intel nuc running heavy stuff (quicksync transcodes for Plex+jf, ollama). Both connected to digitalocean via WG for reverse proxy due to CGNAT.
I had my router SSD either die or get corrupted this past week, haven’t looked much at the old SSD besides trying to extract the config off of it. I ended up just fresh installing opnsense because I didnt have any recent backups (my Synology and nuc back up to rsync.net, but I haven’t gotten around to automated backups for my router since it’s basically a plain config, and my cloud reverse proxy which is just a basic docker compose + small haproxy config). Luckily my homelab reaching out to the cloud reverse proxy means there’s basically no important config on my router anymore, they just need DHCP and a connection.
Besides that the arrstack just chugs along on its own.
I recently figured out I can load jellyfin playback URLs into vrchat video players, either direct stream or through the transcoding pipeline as an m3u8 that live transcodes based on the url parameters you set. This is great because the way watch parties in VRChat works is that everyone in an instance loads the same URL pasted into media players and syncs the playback. That means you need to have a publicly accessible url (preferably with a token of some sort) that can be loaded by an arbitrary number of unique IP addresses simultaneously, which I don’t think is doable with Plex.
I’m now working on a little web app to let me log into Jellyfin, search/browse media, and generate the links with arbitrary or pre-set transcode settings for easy copy/pasting into VRChat. The reason it’s needed is that Jellyfin only provides the original file without transcoding when you use the “copy stream” option, so I believe the only way to get a transcoded stream url currently is to set the web interface to specific settings and grab the URL from the network. But that doesn’t let you set arbitrary stuff like codecs and subtitle burn in and overriding what it thinks you support. So a simple app to construct the URL will make VRChat watch parties a lot easier.
I’ve been hosting immich for a long time and finally decided to make a website so people could sign up for paid monthly accounts and upload their stuff to the server that I’m going to run anyway. Maybe it’ll make me beer money.
Ngl this would skeeve me out. The chances of someone uploading CSAM while slim scare the fuck outta me.
Oh, wow, I was expecting a comment about privacy from the preview I got of your message and then it went on to talk about risk to the provider instead! Yes, you’ve definitely identified a risk and I hope to mitigate it with hopes, prayers, and as anonymous access logs as I can get while still identifying public, popular images.
Straight up CSAM would be pretty brazen. You could probably reduce the chances to zero by just saying that if there’s any thing like that uploaded it will go straight to the police. You probably wouldn’t need to invade anybody’s privacy. The warning itself would set the bar.
I’m kind of surprised there’s not an open source model out there capable of identifying it. Cloudflare has it as a free service if you use them, But I’m not seeing anything that you could just self host.
Models need content for training.
Models that can identify things can generate things if run in reverse. (This is blatant oversimplification.)
Those models already exist. It’s one of the things that everybody’s worried about trying to stop.
With the amount of companies out there willing to fund stopping it I’m surprised somebody hasn’t stepped up to spend a few million dollars to train one specifically to catch people and make it available.
Turns out making money off of it is more important I guess.
Let us know what you set up lately, what kind of problems you currently think about or are running into
I noticed that my link collector nears perfection (for my use case) - not much stuff required to be done lately. Which is a good thing.
Does anyone know how to get a static IP for their server when their ISP doesn’t allow it. I’ve found out how to use duckdns, but I want to set up my own DNS server from anywhere but I’m pretty sure it requires using a static IP.
I use duckdns, and thus have a xyz.duckdns.org domain, that points to the dynamic ipv4 address of my server. I do not host my own DNS server, rather I rely on a cheap Website / Mail / domain bundle. There I can enter my duckdns domain as a CNAME DNS entry. Thus every DNS lookup that is not for the remote hosted Website will resolve the duckdns domain and finally end at my server.
I am not sure where you want to host your DNS server or also for what specific reason… If you don’t have a domain, you kind of don’t need to host a DNS, and every domain provider I had, also offered a DNS server with it.
I wanted to run a pi hole to use as a DNS so that I can be ad free on any device. The problem is that with my computer or with my phone, I need to put in a specific IP address when I want to change DNS on that device.
So I wouldn’t put Pihole on the internet, but instead set up a Wireguard VPN on your devices and access Pihole via that.
Then you can use the dynamic DNS hostname for Wireguard, and a direct IP for Pihole.
Alternatively you could run Adguard Home instead, as it supports being a DoT and DoH server, both of which work over a hostname on your devices (ie; Android uses DoT for its secure DNS option).
Ooh wireguard sounds like a great option
If you drop the “from anywhere” part, you can set up a pihole with a static address that you can use from within your LAN, without any involvement from your ISP.
Read section “Assign your Raspberry Pi a static IP address” of https://www.raspberrypi.com/tutorials/running-pi-hole-on-a-raspberry-pi/
Yes exactly, additionally you probably don’t want to host your pi hole for external use (mobile phone or laptop in a different network) for the reason of latency.
The delay that is imposed by visiting your pi hole at home for each DNS request is going to be very unpleasant.
Rather rely on an external dns provider that provides pi hole like funticionality.
But this does not mean that you can’t also host your pihole for internal use. I use it not just for removing ads, but also to allow the access of local domains.
Honestly I never thought about the latency issue, but I probably won’t do it because of that now that you mention it. Much appreciated.
Started looking at Gemini-protocol over the weekend. (It’s like a newer version of gopher) Now I’m looking for a problem to fit the tool.
I started writing a science fiction, choose your own adventure, short story to fit the platform But that’ll take ages to finish.
I’m also eyeing a meshtastic client proxy. But you only get about 200 bytes per message so I’m not entirely sure it’s worth it.
The last thing, it would be kind of cool is a Zim tie-in. It would be cool to have a canned Wikipedia that could be accessed via Gemini protocol.
Everything is just peachy this week except that I’m still trying to sort out why my I’m unable to access the internet when I’m connected to my unraid wireguard instance.
I am also finally ready to ditch my plex instance, too. Got some self-inflicted permissions issues sorted and it’s been smooth sailing for long enough that I’m ready to make the switch
I’ll paste a comment I made about this recently (with updates). My question is: what is a good solution to keep a music folder backed up (lives on my server NVME partitioned boot drive, but want it backed up automatically to my NAS HDD)? Also: how can I back up my Docker setup in case I screw it up and need to set it all up again?
I used just a Synology NAS with Docker containers to begin with but outgrew that. Now I have a mini PC with a 12th Gen i5 (picked up cheap on eBay) for computing and the Synology NAS is just a NAS.
Docker containers:
Glutun (VPN), qBittorrent, media managers (sonarr, radarr, prowlarr, flaresolverr), Jellyfin (video streaming), Paperless NGX (document upload), Immich (photo upload), watchtower (auto update Docker containers), Plex (because my wife+friends aren’t used to Jellyfin yet and it takes a while to transition them to unfamiliar technology), Actual (budgeting), Syncthing (file sync, update: removed this, not needed, actually need a backup solution), Element server (chat server just for myself, I make channels to cross-share snippets of text/links/images to myself, accessible on any device).
Still need to set up Lidarr and Beet for my music management (update: tried these last night and don’t really need them). Also need to find a good exercise logger, set up Guacamole remote access interface (update: done, happy with this), learn to use Dockage to replace Portainer (done, happy with this), set up an RSS docker app (update: done, still messing around with FreshRSS) and audio bookshelf for podcasts and audiobooks. Haven’t got the guts to approach Home Assisstant yet.
I stopped looking for a notes app and use Joplin to sync with my Mailbox.org account, but I might look for a Docker solution for notes.
NoMachine runs on my server PC for remote desktop. The server PC runs Debian with KDE (because I’m familiar with setting up what I need in KDE, which is the most superior of all desktop environments).
Synology handles making my apps accessible externally (from Synology.me reverse proxy addresses).
I used to use the Marius Hosting site to set up Synology Docker containers. Now I just copy his YAML data and edit it for my server. So I still use those guides.
I’ve written a noob guide notes for myself to set this all up again in case I destroy it somehow (already happened once). Really enjoyed using my week off to learn all this.
Tons of services used daily.
Piled on the ground under a board.
Like many things in my life, this remains 75% complete “good enough”. This lives behind a huge backboard behind my TV. Said backboard is slanting because it is leaning against the wall and I still haven’t mounted it to the wall properly. You can even see some glass panels leaning against the wall, those are some shelves over been meaning to put in… For the past 6 years.
The router, fibre internet entry point and LAN connection in the wall (to upstairs) are all behind d the TV there… So everything is just dumped there.
You’re gonna break my OCD brain.
Rsync in a cron job would do it, no?
what is a good solution to keep a music folder backed up
syncthing (file sync, update: removed this, not needed, actually need a backup solution)
Backup solution, you could use Borg or Restic, they are CLI, but there are also GUI for them
how can I back up my Docker setup in case I screw it up and need to set it all up again?
learn to use Dockage to replace Portainer (done, happy with this)
If you did the switch to Dockge, it might be because you prefer having your docker compose files accessible easily on the filesystem, the question is if you have the persistent data of your containers in bind mounts as well, so they are easy to backup.
I have a git repo of my stacks folder, with all my docker compose files (secrets on env files that are ignored), so that I can track all changes made to them.
Also, I have a script that stops every container while I’m sleeping and triggers backups of the stacks folder and all my bind mount folders, that way I have a daily/weekly backup of all my stuff, and in case something breaks, I can roll back from any of these backups and just docker compose up, and I’m back on track.
An important step, is to frequently check that backups are good, I do this by stopping my main service and running from a different folder with the backed up compose file and bind mounts