I'd like a solution to self-host services such as Vaultwarden, Immich and Home Assistant at home. I don't want to rely on cloud solutions for this so I'm thinking maybe along the lines of a Raspberry Pi for the Docker apps and a NAS for the backend storage, but I'm really clueless as what to get. I just know that I'd want something relatively simple and easy to maintain.

I'm also a bit of a Linux and Docker noob so I'm looking to get some advice and ideas from the Fedi community!

What would your suggestions be? What does your home lab setup look like?

#SelfHosted #HomeLab #Linux #Docker #NAS #RaspberryPi #VaultWarden #Immich #HomeAssistant

Thanks everyone who has replied. Very helpful. Gives me some options to explore and work out what works best for me.

I’ll respond to your posts if I have follow up questions. Thanks again. 🤩

Edit: Adding additional people to say thank you. 😊

@vague @weiser @bradley @edinburgh_man @ZS @emon @alphapuggle @Chartrux @leberschnitzel @trainguyrom @innkeeper @fox @peejay @brakeoutgaming @chewie @rds @etam

Today I’ve spent the majority of the day researching different options I might have for self hosting (using the suggestion made here and more) and to say there is a lot out there is an understatement!

For now I’m going to see if I can get hold of an old laptop of mine and use it to do some testing on; installing different applications and seeing what I feel may suit in a more permanent solution.

#SelfHosted #HomeLab

Old laptop acquired! Now the learning and testing begins, starting with Proxmox!

#SelfHosted #HomeLab

I got a new toy. 😁

#SelfHosting #HomeLab

It’s not a proper rack or anything special, but it’s a start! 🤩

Top Shelf

  • Orbi RBR10 Mesh Router
  • 8 port Netgear unmanaged switch
  • SmartThings Hub
  • Philips Hue Bridge (Hub)

Bottom Shelf

  • Terramaster F4-424 Pro NAS server with 4 x 4TB Seagate Ironwolf HDDs.

Behind the Shelving Unit

  • Semi-tidy cabling. It’ll do. 😅

#SelfHosting #SelfHosted #HomeLab

It took a while to get my head around as I’m a complete noob at it, but this afternoon I’ve got Docker and Portainer setup and a container running Nginx.

Also got a cronjob running every 10 minutes to automatically update DNS records in Cloudflare whenever it detects my public IP at home has updated. 😎

#SelfHosting #SelfHosted #HomeLab #Docker #Portainer #Nginx #Cloudflare

Question for Docker / Portainer users; How do you manage your backups?

I really don’t want to make any services I host “live” before I have a good backup solution in place so looking for tips! Thanks!

#SelfHosting #SelfHosted #HomeLab #Docker #Portainer

Okay so this evening I finally got around to setting up some backup logic on my NAS. I have an rclone docker container which runs a “copy” command every night to backup my docker data/config directory and store it in an S3 storage bucket, and the removes itself so it doesn’t use any unnecessary resource.

It’s definitely not perfect (it might even be overly complicated), but it’ll do for now. At least I know I have some form of backup should shit hit the fan.

#SelfHosting #SelfHosted #HomeLab #Docker

What are your favourite monitoring tools for your home labs?

I’m looking to get some recommendations. Be great if it has an accompanying app for mobile or a decent web app.

#SelfHosting #SelfHosted #HomeLab #Docker

Immich app backing up the photos and video from my phone. Gonna be here a while. 😆

#SelfHosting #SelfHosted #HomeLab #Immich

So far, the Immich-Go tool is working really well with media extracted from Google Photos via Google Takeout!

I love that it compares the media to what already exists on Immich and decides if it needs uploading, and even replaces the files if it finds a better quality version of a photo or video. 🤩

#SelfHosting #SelfHosted #HomeLab #Immich #ImmichGo #GooglePhotos

Done! And without an error in sight!

Just got to let it process through all of the various jobs it needs to complete now!

I think I may look at hosting the Immich Machine Learning container on my gaming PC though. 🤔💭

#SelfHosting #SelfHosted #HomeLab #Immich #ImmichGo #GooglePhotos

Got Docker Desktop installed and a new Immich Machine Learning CUDA container running with the Nvidia runtime!

It's blazing through the facial detection and smart search jobs now! 🤩

#SelfHosting #SelfHosted #HomeLab #Docker #Immich

This just made my wife's Immich upload much much faster. 😆

#SelfHosting #SelfHosted #HomeLab #Immich

Jamie (@[email protected])

TIL you can connect an iPhone up to dock to give it an ethernet connection. 😄 #Tech #iPhone

The Gamer's Tavern

So I finally got around to setting up Borg Backup. Yeah okay, it’s very good. Much better than whatever the fuck I was trying to do before.

What a Linux noob! 🙄😆

#SelfHosting #SelfHosted #HomeLab #BorgBackup

So with Borg now taking nightly backups, I felt confident I could upgrade Immich.

I ran a docker-compose pull && docker-compose up -d and let it do its thing. Then after it completed and went to my Immich URL, I was met “502 Bad Gateway”… shit. 😐

Luckily after about 5-10 minutes, it came back up again. I thought I’d messed something up. 😆

💻 #SelfHosting #SelfHosted #HomeLab #Immich

I’m having fun with Home Assistant and I’m up later than I should be because of it! 😆

So far I have automations for:

  • Presence notifications when entering and exiting geofences. 📍
  • A light turning on an hour before sunset if both my wife and I are out so the dog doesn’t sit in the dark. 🐶
  • Early morning notification to put washing on when the Met Office probability of precipitation at my location is lower than 10% (still a work in progress as I’m unsure about the reliability of this yet). 🌦️

But I’m just getting started and I’m looking for some inspiration for more automation ideas to create tomorrow as I go to bed tonight.

So what are your favourite smart home automations?

💻 #SelfHosting #SelfHosted #HomeLab #HomeAssistant #SmartHome

The chance of rain notification works!

Although it does only does it based on the chance of rain at the time the automation runs. I need to make it so it checks the forecast for the day. 🧐

#HomeAssistant #SmartHome

The YAML for those interested:

alias: Notify Low Rain Probability
triggers:
- at: "05:30:00"
trigger: time
conditions:
- condition: template
value_template: >
{% set prob =
states('sensor.met_office_<location>_probability_of_precipitation') |
int(0) %} {{ prob < threshold }}
actions:
- data:
title: Weather Update
message: >
Low chance of rain. Only {{
states('sensor.met_office_<location>_probability_of_precipitation') }}%.
Maybe get some washing out. ;).
action: notify.all_devices
variables:
threshold: 10
mode: single
@jamie Automating heatpump temperature based on the price of power, Amazingly there was a project for my acient hitachi heatpump that let me stick a ESP32 chip in it and make it smart with #ESPhome and #Homeassistant. I even have PID temperature control from a HACS intergration

@shards Oh wow that is awesome. Was it difficult to install? And have you noticed any savings on your energy bill?

Slightly different but along the same lines; this has got me thinking whether I need to replace the thermostats in my house or if I can convert them into something that could act “smart”.

@jamie wasnt too bad just plugs straight into the mainboard, i documented the process https://github.com/shardshunt/H-Link-Docks!

Was previously using a ir-blaster so no changes to power but having two way control and monitoring is awsome (and less beeping).

Lots if smart thermostat solutions out there depending on how your heating system works

GitHub - shardshunt/H-Link-Docks

Contribute to shardshunt/H-Link-Docks development by creating an account on GitHub.

GitHub
@jamie sometimes you need nerves of steel for these upgrades

@jamie The image shows a command prompt window with the title "immich-go v 0.27.0" at the top. The window is divided into several sections, each providing different information about the file upload process.

The top section displays the input analysis, showing the number of images (28643), videos (9813), metadata files (32925), discarded files (21), unsupported files (9), duplicates in the input (8628), files with a sidecar (38384), and files without a sidecar (71). It also shows the number of files uploaded (21966), errors during upload (0), server's asset upgraded (278), server has same quality (5789), and server has better quality (1715).

The right section shows the server's jobs, with active jobs (14) and waiting jobs (80401).

The bottom section contains a log of commands sent to the Immich Job, including "resume:smartLog," "resume:searchTemplateMigration," "resume:backgroundTask," "resume:sidecar," and "resume:faceDetection," with the final line stating "upload completed."

The bottom of the window shows progress bars for "Immich content," "Google Photo puzzle," and "Uploading," all at 100%.

The overall color scheme is black with white text, and the interface is typical of a command-line application.

Provided by @altbot, generated privately and locally using Ovis2-8B

🌱 Energy used: 0.370 Wh

@jamie 10K video files!? 
@roughnecks Lots of transcoding to be done! 😆
@roughnecks That’s just from my media collection as well. My wife’s will likely have many more videos. 😬

@jamie The image displays a screenshot of a software interface named "intimmich-go v 0.27.0_," which appears to be related to image and file management. The interface is divided into three main sections: "Input analysis," "Files uploaded," and "Server's jobs."

  • Input analysis:

    • Shows a total of 28,643 images, 9,813 videos, 3,292 metadata files, 17 discarded files, 21 unsupported files, 38,384 duplicate files, and 38 files with a sidecar.
    • The section also lists the number of files uploaded (4,668), errors during upload (0), files not selected (0), server asset upgrades (5), and files with better quality on the server (51).
  • Files uploaded:

    • Lists the files being uploaded, with timestamps and status messages.
    • Examples include "file-takeout-2825671871343052-1-090: Takeout/Google Photos/Photos from 2809/978(2).JPG" and "file-takeout-2825671871343052-1-098: Takeout/Google Photos/Photos from 2809/978(3).JPG."
  • Server's jobs:

    • Shows the status of server jobs, with active jobs at 0 and waiting jobs at 0.
  • The log section at the bottom provides detailed information about the tagging and uploading process, including timestamps and file names.

    Provided by @altbot, generated privately and locally using Ovis2-8B

    🌱 Energy used: 0.342 Wh

    @jamie The image shows a smartphone screen displaying a backup application interface. The background is dark, with text and elements in light purple and white. At the top, there is a navigation bar with a left arrow, the word "Backup" in the center, and a settings icon on the right. Below this, there is a section titled "Backup Albums" with a "Select" button. The selected albums are "Favorites, Recents (All)." The next section shows "Total" with 7737 assets, "Backup" with 235 assets, and "Remainder" with 7502 assets. At the bottom, there is a progress bar indicating "Uploading file info" with a file name "IMG_1798.JPG [image]" created on "May 4, 2025," and a speed of 12.15 MB/s. The progress bar is filled to 100%, indicating the file is fully uploaded.

    Provided by @altbot, generated privately and locally using Ovis2-8B

    🌱 Energy used: 0.229 Wh

    @jamie I have uploaded 65k assets from iCloud Photos Library (so each one had to download from iCloud first) and it took three days nonstop running on an iPad. Not that bad.

    @stooovie Holy moly yeah that’s a lot of items to upload. 😆

    Did you keep the screen active or did the background service actually work? Doesn’t seem to be working for me.

    @jamie screen active, charging. Background is intermittent at best. But they're rewriting the whole syncing engine, it should work a lot better.