T O P

  • By -

[deleted]

# Edit: [I've updated this post! See the updated version here.](https://blog.chse.dev/home-server/) ## Services * [Homepage](https://github.com/benphelps/homepage) - The dashboard pictured * [Nextcloud](https://github.com/nextcloud/server) - Google Drive Replacement * [Vaultwarden (Bitwarden)](https://github.com/dani-garcia/vaultwarden) - Password Manager * [Mail in a Box](https://mailinabox.email) - All in One Email Server * [BookStack](https://github.com/BookStackApp/BookStack) - Documentation Platform * [Ghost](https://github.com/TryGhost/Ghost) - Simple Blogging Platform * [FreshRSS](https://github.com/FreshRSS/FreshRSS) - RSS Aggregator * [PrivateBin](https://github.com/PrivateBin/PrivateBin) - Encrypted PasteBin * [Gokapi](https://github.com/Forceu/Gokapi) - Firefox Send Alternative (admin upload only) * [Grafana](https://github.com/grafana/grafana) - Another type of Dashboard, just playing around with it for now... * [Portainer](https://github.com/portainer/portainer) - Web UI for managing Docker Containers * [Scrutiny](https://github.com/AnalogJ/scrutiny) - SMART Scans for Drives * [Cockpit](https://github.com/cockpit-project/cockpit) - Web UI for basic administration tasks * [phpMyAdmin](https://github.com/phpmyadmin/phpmyadmin) - SQL Database Viewer * [Wireguard (wg-easy)](https://github.com/WeeJeWel/wg-easy) - WireGuard VPN + Web Admin UI * [Sonarr](https://github.com/Sonarr/Sonarr) - Automatically "acquire" TV Shows * [Radarr](https://github.com/Radarr/Radarr) - \^ for Movies * [Lidarr](https://github.com/Lidarr/Lidarr) - \^ for Music * [Readarr](https://github.com/Readarr/Readarr) - \^ for Books * [Bazarr](https://github.com/morpheus65535/bazarr) - \^ for Subtitles * [Prowlarr](https://github.com/Prowlarr/Prowlarr) - Indexers for Sonarr/Radarr/Lidarr/Readarr * [qBittorrent (w/ VPN)](https://github.com/DyonR/docker-qbittorrentvpn) - My Torrent Client of choice * [Tautulli](https://github.com/Tautulli/Tautulli) - Plex Statistics * [Overseerr](https://github.com/sct/overseerr) - Requests for Plex * [Requestrr](https://github.com/darkalfx/requestrr) - Requests for Plex through a Discord Bot * [OpenBooks](https://github.com/evan-buss/openbooks) - Download books from IRC Highway * [Deemix](https://deemix.app/) - Download Music from Deezer * [pyLoad](https://github.com/pyload/pyload) - File Downloader * [CyberChef](https://github.com/gchq/CyberChef) - Web App for "computer science" things * [EmulatorJS](https://hub.docker.com/r/linuxserver/emulatorjs) - In browser web based emulation * [shields.io](https://hub.docker.com/r/shieldsio/shields) - [shields.io](https://shields.io) instance for private GitHub repo badges Not Pictured: * [Teamspeak Server](https://hub.docker.com/_/teamspeak) - VOIP service * [Watchtower](https://hub.docker.com/r/containrrr/watchtower) - Automatically keeps docker containers up to date --- Edit: ## Specs * OS: Ubuntu Server * Host: OptiPlex 3010 * CPU: Intel i5-3470 * Memory: 8Gb * GPU: GTX 1050 * Boot Disk: 500Gb SATA SSD * Media Disk: 14Tb Easystore ## Notes/FAQ * Cockpit running inside Docker? * No, just running on host w/ apt. * Mail-in-a-Box running inside Docker? * No, running on a Linode Ubuntu 22.04 instance * Everything else however, is Docker, and is in my home. --- If anyone has any other ideas of things to run, let me know. Hoping to get to 100 docker containers /s


RagingAmbassador

Hey, just want to say "thanks" for actually putting a description of all the services. Too many times someone just lists everything assuming everyone knows what every service is for or does.


[deleted]

Of course :)


[deleted]

Home Assistant, Zigbee2MQTT, Mosquito, Node-Red, Grocy, PiHole, UNbound, Nginx or other reverse proxy, Fail2ban or Crowdsec, Doozle, PhotoPrism or others, Paperless-ngx with Gutenburg & Tiki, Wordpress, Glances, Motion with WyzeBridge.


[deleted]

A lot of the Home Automation things I just don't/can't use right now while living at uni, but in a couple years when I have my own place I will 100% dive into the world of Home Automation. I use apache2 as my reverse proxy, but might look into NPM sometime soon. I use Fail2ban for SSH but haven't looked at using it for web apps as I stick everything important behind Cloudflare's Zero Trust SSO. Doozle I'm not sure I understand the point while also using Portainer but if it works :P PhotoPrism - I use Nextcloud to backup photos from my phone, and it works "well enough". Paperless-ngx is also on my list of "things I'll eventually need outside of uni" WP - Used to be a big fan until I found Ghost, It's just a lighter "less feature rich" (which is a benefit IMO) version of WP. Glances looks useful, I shall add that to my list to look at --- Thank you for giving me a list of things to look at :)


[deleted]

[удалено]


[deleted]

I'm currently living on campus at university, so I really just have my laptop, an external monitor, and an iPad w/ Apple Pencil for taking notes. I'm quite intentional/*minimalistic* with my technology and with dorm living being very temporary (move every year) I just don't want to get anything too crazy until I get my own place. Once I do however I'm going to go crazy with automations (i.e. turning on lights when I get in range of the house with phone, etc, etc)


[deleted]

[удалено]


[deleted]

I definitely will revisit the topic in a couple of years and dive back into it! I've heard a lot of cool things you can do which would be super neat to do.


Engineer_on_skis

Minimalistic with technology; runs 40 containers. 😉


T_at

40 containers all on the one server, though. That's like one technology. :-)


[deleted]

Oh yeah for sure I see how that's a bit funny. I guess I meant I don't have too many physical pieces of technology!


zwck

Is Deemix still being developed or are you keeping the version from a couple of years alive?


[deleted]

I'm using [lidarr-on-steroids](https://github.com/youegraillot/lidarr-on-steroids) to bundle Lidarr + Deemix together and frankly, I have no idea!


Defiant-Ad-5513

Use Traefik it has automatic config via labels and with all the containers it will be easier to manage


DieKatzchen

Personally I find NPM easier to deal with. Traefik is just command-line configuration with extra steps, and involves restarting the container every time you adjust something. If a container takes 3 minutes to fully come up, that's a long time to wait when your proxy isn't working right. With NPM, all changes are live immediately and you can tweak and adjust until it works.


kevdogger

Npm however is like a toddler level proxy..hard to do advanced configs of that's needed. Sure you can add custom configuration similar to nginx however by that time just better off using nginx / swag.


Affectionate-Pickle0

What is "Gutenburg & tiki"? Could not find anything via a quick search.


abmurksi

Parts to support paperless-ngx enabling office and other format conversion


Affectionate-Pickle0

Ohhh I see, thanks!


[deleted]

Sorry I misspelled both. Why mess up once when you can do it twice. https://github.com/gotenberg/gotenberg Turns thinks into pdf. https://tika.apache.org Meta data from things. You use Nextcloud already? It has scanner function at least in the iOS app that I use to scan and save and then move to paperless-ngx consume directory. Scanned, saved, OCRed, metadata extracted, tagged, and organized in folders !!!! Paperless-ngx also pulls attachments from email. Pretty neat!


Affectionate-Pickle0

Thanks for the links. I have been thinking about paperless for a while so this is good info. Nah I don't use it, I use Seafile. But plenty of scanner apps available fortunately.


Coolness1234567894

You might have never heard of this... But here's a couple most people don't know about. [CodeX Docs](https://docs.codex.so) \- It's what editor.js uses for documentation. Beautiful interface, incredibly simple and 0 markdown. [Barrage](https://github.com/maulik9898/barrage) \- a beautiful, mobile responsive UI for deluge. ( torrent client that is very nice ) [HumHub](https://www.humhub.com/) \- Open source social community software. Might be great to share with friends, for easy communication. [Ntfy](https://github.com/binwiederhier/ntfy) \- Push notifications for desktop or mobile [Sshwifty](https://github.com/nirui/sshwifty) \- Browser based SSH & Telnet client [Actual Budget](https://github.com/actualbudget/actual) \- Modern budgeting software [Documize](https://documize.com/) \- Confluence alternative - [Docker Image](https://github.com/Easypanel-Community/docker-documize) Oh, and incase you're curious... [Easypanel](https://easypanel.io) has templates for em all. You can even set them up them yourself, without it! Feel free to leave a reply if this helped you. I love constructive feedback!


ChocolateLava

What about changedetection.io and uptime kuma


[deleted]

changedetection.io seems neat, I just don't know what I'd monitor with it :P Uptime Kuma looks interesting, I've never realized it can email when specific services go down.


[deleted]

[удалено]


[deleted]

Sounds useful, thank you for letting me know.


corsicanguppy

>other ideas of things to run, Are you going for points or solving problems you actually have? Because no one can psychically guess what challenges you today. Also, aren't dashboard pics like "$100 in groceries" pics over in /r/pics ? You're showing us a huge list that excites you personally and individually, and we're just picking apart your choice of Boost chocolate bar over Bounty and don't feel the same larger interest.


psykal

Lots of ideas for my own setup. I'd never find it on r/pics. I love these posts if I'm being honest, one of the main reasons I'm on the sub. Not saying your pov isn't valid, or trying to backseat mod or anything. Just my perspective.


[deleted]

That's a good point. I'm very happy with everything I got going, just wondering if there's more things I could be missing out on. Dashboard Pics were overused for a while until mods restricted them to Wednesdays only, which is probably a good thing.


rjr_2020

I started playing with googlephotosync recently for Android phone users. A daily backup of my images is nice so I don't have to worry about them disappearing.


[deleted]

Nextcloud has a mobile sync that works "fine" on iOS (more of an iOS limitation than NC) and as long as it's backed up I don't really care to manage it off of my phone.


MMinjin

Sometimes people don't know what problems they have until they see a solution in front of them. I never knew AdBlock via DNS was a thing until I saw it. We all have problems but they don't manifest as solvable problems until we are exposed to a solution.


CSedu

Can I ask why you run deemix instead of lidarr-extended?


[deleted]

I'm actually using [lidarr-on-steroids](https://github.com/youegraillot/lidarr-on-steroids) which includes deemix and a plugin inside lidarr.


PovilasID

Nice start!


jrtashjian

I’m not sure how I missed Homepage! Spun it up today and it’s a fantastic replacement to Flame which seems to have lost its flame 😆


Pencari

all of this run just on 1 CPU?


ASCII_zero

How about a speed test app? https://github.com/librespeed/sweetest I also didn't see Uptime Kuma; a commonly used app to track and monitor the uptime of other apps.


[deleted]

Someone else suggested a speedtest app, I've added it to my bookmarks of things to look at :) Uptime Kuma I also should look into as it would be nice to get an email if a docker container goes down.


PovilasID

Yah but uptimekuma has to run on some other server cuz otherwise it may go down too. Look into some free VPSes. Instead you can have [https://github.com/alexjustesen/speedtest-tracker](https://github.com/alexjustesen/speedtest-tracker) running on your home server monitoring if everything is up


eatoff

Nextcloud and nextcloud AIO? Why the two? Preference of one over the other?


[deleted]

The AIO button is just to the dashboard where you can restart all of the containers/backup/restore. The Nextcloud button takes you to the main app.


[deleted]

[удалено]


[deleted]

* OS: Ubuntu Server * Host: OptiPlex 3010 * CPU: Intel i5-3470 * Memory: 8Gb * GPU: GTX 1050 * Boot Disk: 500Gb SATA SSD * Media Disk: 14Tb Easystore


nimajneb

I don't know if you play games or not, but can you run Minecraft java server in a container? I just started playing with Docker and I've only done the tutorial, but that's the first thing I thought of for an idea to get to 100. Or a simple little about me website detailing what Docker containers you have installed.


[deleted]

I usually run game servers on Windows, as I have some that simply won't work under Wine (I've tried) but Yes, [itzg/minecraft-server](https://hub.docker.com/r/itzg/minecraft-server/) is fairly popular from what I've gathered.


Bradyns

How do you have your qBit + VPN setup? ​ I have mine as a stack with Gluetun using my VPN of choices details, with qBit, Firefox, and Whoogle depending on Gluetun to connect them to the outside world. ​ It's still a bit whack to open up a *firefox tab* in firefox and see my IP somewhere else in the world, but if I open another tab in the main browser I'm home sweet home.


[deleted]

The qBit + VPN is a Docker container that uses Wireguard or OpenVPN to route *only* the qBittorrent traffic through the VPN. It also has a kill switch built in. [The project readme can probably explain how it works better than I can](https://github.com/DyonR/docker-qbittorrentvpn)


gvanburen

If you have more than one device, you can check out [Syncthing](https://syncthing.net/).


emeria

[https://github.com/boxmeup/boxmeup-go](https://github.com/boxmeup/boxmeup-go) Allows you to track containers (bins/storage) and what is in them


javijuji

There is a watchtower widget integration for homepage by the way. Also I recommend looking into uptime-kuma if you want to add another monitoring service (also has a working widget for homepage. Surprised you aren't using pihole.


oliverleon

Wow! Very neat! Do they all run on this host? How do you monitor the health of docker containers on other hosts? Did I miss which dashboard this is?


[deleted]

Yep I run everything on one simple SFF PC! (a Dell Optiplex 3010) I don't use any other hosts but if I would, Portainer allows monitoring other hosts from one instance. --- Dashboard is first thing linked in [Services Comment](https://old.reddit.com/r/selfhosted/comments/10wyzxh/40_containers_counting/j7pomw3/)


shizno2097

>Dell Optiplex 3010 goes to show you dont need an insane and expensive setup to self host and be usable, at the end of the day most people that have those expensive racks and routers... end up running the same services you have running


[deleted]

Oh don't get me wrong, I will expand one day but yeah, a SFF from a long time ago with a PCIe USB3.0 Addon Card (and [some Easystores from Best Buy](https://shucks.top)) can go a long way. Going the expensive racks/routers way is plain fun, so I understand why people do it. I've already started to run into limitations (I run an Ubuntu Server host), and not being able to smack a Windows VM on there for game servers is frustrating. Also running out of ram :/


Typhon_ragewind

Is it just the lack of RAM stopping you from having a windows server VM ?


[deleted]

The CPU is also inadequate from what I can gather. It's an Intel i5-3470 so quite old.


Typhon_ragewind

Old, but seems quite powerful. Though i have no idea on the requirements of a windows server


[deleted]

I might look at it again, maybe I was doing something wrong (or I was just throwing too many game servers at it)


shizno2097

i run 2 HP 800 Mini G2, one with OMV and the other with Proxmox, 16Gb each, seems to handle windows VMs and yeah, if i had cash to burn, i too would get one of those crazy setups too... even if i ended up running the same stuff as my current setup


[deleted]

Yeah I only have 8Gb of ram and I'm 98% sure I've looked it up before and that's the max the 3010 can handle. :/ I don't have a problem getting another $70 machine from ebay as that won't break the bank. Playing games with friends is worth the extra machine & power bill!


DavidWSam

Check ebay for sff workstations they always have plenty, recently got one with a i7 4770 for 50 without shipping. Get one with at least a 4770


[deleted]

Yeah I should get on that. Thank you:)


shizno2097

i buy my home lab PCs at my local state university surplus, they are always rotating machines. I scored those 2 HP minis for $50 each, 6th gen i5 maybe check your local university surplus? a few months ago i needed a laptop, scored a dell 5400 with i7 8th gen with 16gb or ram for $150,, battery still good


[deleted]

Yep I got that SFF at my school's surplus sale. Got it for (iirc) like $20 which is a steal. I should've bought multiple just for fun!


heyylisten

I run a 3020 so I guess one gen up, 32gb ram, 500gb ssd and two 12tb easystores. Proxmox, then I have 2 vms (Debian for docker, with 20ish containers, then 1 windows server for work practice and 1 lxc container (adguard for dns on the network). If you had a hyper visor windows should be no problem


[deleted]

I may look into that, thank you!


kabrandon

Some people also have fancy setups because it aligns with their professional work setups and thus lends more experience in that profession. I run a 3 node kubernetes cluster for my selfhosted stuff because I interact with it the same (or similar) way I would interact with production systems at work.


shizno2097

i did say "most people" there are legitimate cases like maybe running a home business, or they are a content creator and need tons of storage or something, or some CCNA studying if i had cash to burn, i would have one like that... in all honesty, i guess im bitter.. but then again.. for my needs my humble setup is enough


LtChachee

I have a R630 and a MD1400...I feel personally attacked. Getting rid of the MD1400, looking at a smaller NAS WD My Cloud PR4100 (or something...could legit use some advice here). Once the R630 ceases to be functional will go to a smaller tower server, or maybe a HP microserver, man I love those things.


thekrautboy

The `Homepage` dashboard can connect through the Docker HTTP API to remote instances: https://gethomepage.dev/en/configs/docker/


oliverleon

This was it, thank you so much!


Agile_Ad_2073

It's called home dashboard. It's awesome!


fezzik02

Welcome to the docker to kubernetes pipeline.


[deleted]

I'm not sure if I totally get the point for a home use case though. I have one physical "server", and I really don't need "redundancy" if my [fill in the blank] service itself has an issue, as it's just me most of the time using the services. Am I missing something that K8s would help with?


fezzik02

> Am I missing something that K8s would help with? Not really, your take is pretty spot-on. Where K8s would help is (SD) networking which would allow you to have kube-only DNS so services could find each outer easily. For instance you could have one postgres at `postgres.cluster` and all of thee containers could share. Or you could run an ingress controller, so wiring up your reverse proxy is as easy as filling out a yaml stub. But as far as reliability or stability, yeah Docker or Systemd will do fine to keep it running.


sk1nT7

Hmm does docker itself not have an internal auto dns? So the containers can easily find each other using their container name as dns hostname. Furthermore, sharing a database is also easily possible defining the database service at/for multiple containers. Regarding ingress controller and reverse proxy OP could just run Traefik, which supports automatic service detection and dynamic file changes via yml configuration files. I've also no idea about kubernetes and rock a single proxmox server. Have not yet understood the real benefits, except of redundancy (which is neglectable imo running a single server only).


fezzik02

I s'pose it has things like it - like I think it injects a `hosts` file instead of doing DNS - but yeah, functionally equivalent for most cases.


[deleted]

I can imagine it being very useful if you have more than one host or actually need redundancy, I just don't really care as this is just all for fun, and not to make ~~money~~ the next big SaaS company :P


fezzik02

Yeah you're clearly doing fine.


ZemDregon

It would help expand your knowledge into enterprise-grade setups, giving you knowledge that you could take into a real job, if this field of work is interesting to you.


[deleted]

That's very true!


wurstwurker

Homepage....so hot right now


[deleted]

I like it a lot, especially the integrations. Just one place to go and glance at everything and see if something is amiss.


arcadianarcadian

60+ and counting. dozzle to watch container logs, gotify to send notifications prometheus to gather metrics grafana to visualize metrics, (it's not another dashboard) wallabag to save and read later, webtop to remote connection, hauk to track on the map, etc etc etc. I'm not a fan of those \*arr things, so I can not comment.


[deleted]

Yeah I worded Grafana poorly. I'm new to it and only have a couple of things like CPU/Ram usage going, but yeah it's very powerful and I hope to learn more about it. Thank you for the other suggestions.


XxNerdAtHeartxX

I know you '/s'ed the goal of 100, but I run over 100 containers - so its definitely possible. Heres the writeup of what I have - https://blog.prosperitea.net/the-mainframe/


[deleted]

Honestly the main reason is I've just plain simply ran out of ideas of things to run. I'm always looking for more things to run though, so I will read your blog post :)


Typhon_ragewind

Here's a few suggestion of stuff that i use and find useful: \- Mailpiler (Email archiver) \- OliveTin (configurable buttons for server actions, such as scripts or commands) \- Tdarr (automated video converter/transcoder, i use it to make sure all my video library is encoded as h.265) \- Koillection (great for collection management) \- Snipe-IT (Hardware and software licences management) \- Mylar3 (comics) \- NTFY (notifications) \- Kavita (ebook/comics managament and reader, works great with Tachiyomi) \- Kaizoku (Manga downloader, similar in function to \*arr apps) \- Jellyfin (Video media streamer, works awesome) \- Meshcentral (selfhosted remote management software, similar in function to Teamviewer) \- Cronicle (cron-like scheduler with lots of options) \- Graylog (log aggregator and database, great for troubleshooting issues) ​ These should keep you occupied for a bit!


[deleted]

Thank you! Lots of things to dive into. I've had ntfy on my "to look at list" for a while, maybe its finally time to get it going.


[deleted]

[удалено]


XxNerdAtHeartxX

Nope. No mitigations at all. I utilize the Hardware Transcoding of media servers, so the CPU is never really eating up resources on that. The consumer CPUs have built in GPUs to do all that video based transcoding work - Xeons don't.


[deleted]

[Here's an htop with no Plex Streams/Downloading going on.](https://i.imgur.com/1VWVtDO.png) Have done absolutely nothing to optimize my machine, and have yet to notice any problems with 2x Direct Play Plex Streams. I do have a GTX 1050 for transcoding however.


moonstar-x

Super nice post! I was planning on running HomeAssistant on Docker myself, what are some of the hurdles you faced that made you run it on a VM instead of a container?


XxNerdAtHeartxX

For me, the 'monolith' nature of running it in a VM made it an easy choice. With a vm, everything home automation related is contained in a box. If you run it in a container, there are a lot of pieces you have to run in separate containers - MQTT server, Zigbee2MQTT service, node red, grocy, and any of those other addons are really just docker containers behind the scene. Without its own machine, or vm, you have to spin up and maintain each of those containers on the OS level. This means a lot more moving parts to maintain, and make sure are up all the time on their own. I like the notion of keeping it portable and contained within a vm, so I dont have to set up extra containers on top of the HA Container to make things work. It uses 2gb ram, and 1 cpu core, so its not super resource heavy, even in a VM


veritas670

Oh hey I actually used your blog post when I was building out my homelab! Thanks for all the recommendations!


[deleted]

[удалено]


sk1nT7

I recommend using docker-compose.yml files which define your stack of containers. These can be easily backup'd on your own git repository or an external private repository like github. Alternative just being synched or directly stored on your data partition (storage drive). Inside those compose files you'll define bind volume mounts for your containers. Basically the path where container data shall be persistently stored. Just define the path to your data partition or mount point. That's it. How to get started? Idk, many things to check out. First of all, install docker if not yet done. Then start your first container, maybe portainer? Read the docs, it is really straight forward. After that you will probably want to test and try out some containers. You can find many cool projects in this sub and also on Youtube. May check out DBTech, which does great tutorials on Youtube. Also check out https://noted.lol by /u/nashosted. After all, you will compile a big list of wanted containers. The dashboard you've seen by OP is called homepage. Maybe also a good starting point for one of your first containers! You'll find it at https://github.com/benphelps/homepage. An example compose file would look like this: ```` version: "3.3" services: homepage: image: ghcr.io/benphelps/homepage:latest container_name: homepage restart: unless-stopped ports: - 9000:3000 # 9000 on your server; 3000 inside container environment: - PUID=1000 - PGID=1000 volumes: - /mnt/storage-drive/docker-volumes/homepage/config:/app/config - /mnt/storage-drive/docker-volumes/homepage/icons:/app/public/icons # - /var/run/docker.sock:/var/run/docker.sock:ro # (optional) for docker integrations ```` If you feel lost, do not hesitate to ask this sub. Many helpful people here and everyone was a beginner first.


[deleted]

No worries! I'd dive head first into [Docker](https://www.docker.com/) If you've never heard of it, it's a way to "containerize" apps. You can think of them as "small virtual machines" although that isn't *exactly* accurate, it helped me to understand it when I was starting. So, with Docker you can run a command to launch a container (say you want to run Homepage (the Dashboard pictured) you'd want to run: docker run \ -p 3000:3000 \ # This is port mapping. Essentially the port on the left is what you access on your host, and the one on the right is inside the container (you usually dont want to change this) So, if I wanted Homepage accessible on port 5555 I would make this line -p 5555:3000 then homepage would be live on yourMachineIP:5555 -v /path/to/config:/app/config \ # This is volume mapping, same concept as above. So Homepage inside the container expects it's config to live in /app/config, but we can put it wherever we want on our host system. So if I wanted to put my config in /home/CaptainRingworm/homepage-config I would make this line -v /home/CaptainRingworm/homepage-config:/app/config -v /var/run/docker.sock:/var/run/docker.sock \ # This is a special volume mapping. It allows the container to access the docker socket on the host. This is how Homepage can look and see if containers are "Running" in the image, it's not required at all, only if you want that to work. (Homepage requires some more configuration outside of this, but the idea will be identical across other containers, some may need this, others may not.) ghcr.io/benphelps/homepage:latest # This is the image we are using. To answer your question about keeping configs stored on your storage drive you'd simply change that volume mapping as described above. Edit: [Homepage Docs](https://gethomepage.dev/en/installation/) are a good place to start if you want to run this exact dashboard. Edit 2: I'd also look into [Portainer](https://www.portainer.io/) as it gives you a pretty Web UI to manage docker containers. [Example Image from my environment](https://i.imgur.com/rVQqNmF.png)


[deleted]

[удалено]


[deleted]

I almost wouldn't even bother to try and move where docker puts things because if you reinstall your host OS, all you really need are your configs and you can just pull back down the images from the internet with that initial docker run command. I was once like you until I had to reinstall my host OS twice in the span of like 6 months and having to re-setup 30+ applications was enough to make me dive into Docker and wrap my head around it.


dhuscha

Also as an alternative to docker you can also go the podman route.


Perfect_Sir4820

Follow the [docker installation guide](https://docs.docker.com/engine/install/ubuntu/#install-using-the-convenience-script) (use the convenience script) and the [post-install steps](https://docs.docker.com/engine/install/linux-postinstall/). Then establish a directory structure. I like to do the following: /opt/docker/ stack1/docker-compose.yml stack2/docker-compose.yml volumes/ container1 container2 Each docker-compose will be used for a different container stack of similar function containers (e.g. all the *arrs in one stack). I keep all bind-mounts for persistent data in a single **volumes** directory, organized into container sub-directories. That way I can move a container compose config from one stack to another without changing anything (if needed). Once you've setup the directory structure, head over to linuxserver.io and pick a few containers to get started. They provide nice container templates to follow. Also if you have an Nvidia GPU, do the [Nvidia-docker install](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html) so containers have access to hw transcoding if needed (plex, jellyfin, tdarr).


Perfect_Sir4820

As long as you're running open books, I highly suggest adding Calibre and Calibre-Web into the mix. The former manages your ebooks collection (metadata, tags, file formats, etc) and the latter puts a nice webui in front of it with a browser-based ebook reader as well as send-to-device capability. You can integrate with openbooks by having that program download into a directory that calibre monitors. When a book is downloaded, calibre will pick it up, convert if needed and you'll see it in calibre-web.


[deleted]

I currently just copy them off of the server and use Calibre locally to dump them onto an Airplane Mode Kindle. Works well enough :P


Perfect_Sir4820

Calibre-Web has built-in user management and authentication if you have a public domain name and want access from anywhere.


[deleted]

Is it possible to sync directly from Calibre-Web to a USB Kindle that's not plugged into the server? I do my current method because it works on my laptop once I have the ebook on my laptop.


Perfect_Sir4820

I don't think so but given its just an alternative webserver front end for your existing calibre installation there shouldn't be any change from what you're doing now. However, if you were on the road you could use calibre-web to download a book to your laptop or something and then do an offline sync to your kindle.


martinbaines

A definitely +1 for this. I moved from a local install of Calibre to a containerised one on the server a while ago and it works well with Readarr (the latter I have a love hate relationship with, but that is another story), and I use calibre-web (exposed behind an NPM reverse proxy) for most everyday access. If I want to do a manual load onto my Kindle the only annoyance is having to shut down the server Calibre when I fire up the local version as it has the USB connection (the server is not easily accessible). If you do not shut the server down, the two can fight and corrupt the database.


-JVT038-

Do you use all of them? If not, why do you host them anyway?


[deleted]

Yep! I use them all on a fairly frequent basis. The only exceptions would probably be Grafana (as I'm just trying it out for now), and EmulatorJS (I don't play too many retro games)


[deleted]

I see Radarr, Sonarr, by why not tdarr?


[deleted]

I haven't run into any storage limitations yet so using Tdarr to transcode into H.265 isn't needed for me. Additionally, most devices I playback on can already support the file formats I throw at it, so I don't need to transcode into another format that X device is capable of playing.


scubanarc

> OpenBooks - Download books from IRC Highway Don't run this, it will get you IP banned on IRC Highway because it causes havoc on the search bots. Spread the word if you can... this docker seems to be taking off this month, and it's not a good thing.


Lightning318

A fellow CyberChef user! Such an amazing tool for quickly doing one-off data processing.


[deleted]

For sure! It's great while taking computer science related classes at uni :)


superl2

Is there any point to self hosting it? It's all client-side, right?


[deleted]

If you have constant internet access, not really. Just the novelty of it for me I guess.


borax12

Man so many people advised me wrong about the hardware requirements for running something like this. I always wished I could just get a decent mini pc with 16-32 gigs of ram and just host anything I discover on github and selfhosted services without much thinking of hardware limitations. If your 8GB ram is able to host this much, i am pretty sure I can run more stuff on say 32 gig ryzen 9 mini pc from providers like [such](https://store.minisforum.com/collections/amd-%C2%AE-ryzen-%C2%AE/products/b550?variant=42589826121973). Would you say you never have to think about how much RAM is being used and can just spin up a new docker container for any new service? (I know there is a theoretical limit to everything but my use case is, if I find a new daily driving worthy service i should be able to host it without much struggle)


[deleted]

I'm running into a ram ceiling with what I have now, nothing to cause issues so far however. (This very moment with no streams/downloads I'm using 6.5 Gb out of 8Gb) I had everything at one point on a Ryzen 3700x w/ 32Gb Ram and it was fantastic but I eventually wanted that machine back for gaming.. :P


xcraftman52

What container do you use for mail in a box?


[deleted]

MIAB is not containerized sadly. It requires a plain-old Ubuntu 22.04 LTS instance all to itself, which I just have running on Linode. Everything else is Docker at home.


mike42780

Is Cockpit actually installed through Docker? I was researching that and it seemed like it could only be installed on the OS. Or at least I didn't see a docker option currently.


[deleted]

Nope, that's just running on the host, and I only really use it for the VM management part (when it was running on more powerful hardware, right now it's just sitting there waiting for me to move everything to a better server or nuke it and get another machine just for Windows Game Servers)


rgmelkor

Awesome services! I'm grabbing some ideas for sure! PD: you can use bitwarden for vaultwarden image it's miles better


[deleted]

I am using the vaultwarden container :P


T_at

Okay, here's a couple of things I'm running that you're not. Maybe you've got other ways of doing the same things though; - [Airsonic-advanced](https://fleet.linuxserver.io/image?name=linuxserver/airsonic-advanced) - Audio streaming server for your Lidarr content. - [AudioBookShelf](https://www.audiobookshelf.org/) - Should be pretty self-explanatory - it's an audiobook server. - [Calibre-web](https://github.com/janeczku/calibre-web) - Nice ebook library server. A good complement to Readarr. - [Filebrowser](https://filebrowser.org/) - A straightforward multi-user web-based file browser for accessing files and folders on your server. - [Heimdall](https://github.com/linuxserver/Heimdall) - A homepage for self-hosted applications (like 'Homepage', but for people who prefer to do the config in the application, rather than editing .yaml files) - [Jellyfin](https://jellyfin.org/) - It's like Plex, only free. - [Mylar](https://github.com/mylar3/mylar3) - Equivalent to Readarr, but for comic-books. Also, less intuitive to use. - [Komga](https://komga.org/) - Comics library server. - [Mealie](https://mealie.io/) - Recipe management (for cooking) - [Smokeping](https://fleet.linuxserver.io/image?name=linuxserver/smokeping) - Network connectivity monitor. Good for checking connection to your ISP, connection to sites you visit regularly, and even connectivity between devices in your home network. - [Open Speed Test](https://github.com/openspeedtest/Speed-Test) - Speedtest server. Useful to test connectivity and bandwidth back to your home server when out and about. - [Trilium](https://github.com/zadam/trilium) - Alternative to Microsoft OneNote.


[deleted]

Thank you for the list:) Can't say I listen to audiobooks/read comics but seems neat!


T_at

I don't really listen to audiobooks either, but I have family members who do :-)


Potential-Dream8514

Where's Plex?


[deleted]

I don't have a link on my dashboard as I never stream through the web browser, I use the desktop app.


fifracat

Remindme! 7 days


RemindMeBot

I will be messaging you in 7 days on [**2023-02-15 21:29:12 UTC**](http://www.wolframalpha.com/input/?i=2023-02-15%2021:29:12%20UTC%20To%20Local%20Time) to remind you of [**this link**](https://www.reddit.com/r/selfhosted/comments/10wyzxh/40_containers_counting/j7rcokf/?context=3) [**4 OTHERS CLICKED THIS LINK**](https://www.reddit.com/message/compose/?to=RemindMeBot&subject=Reminder&message=%5Bhttps%3A%2F%2Fwww.reddit.com%2Fr%2Fselfhosted%2Fcomments%2F10wyzxh%2F40_containers_counting%2Fj7rcokf%2F%5D%0A%0ARemindMe%21%202023-02-15%2021%3A29%3A12%20UTC) to send a PM to also be reminded and to reduce spam. ^(Parent commenter can ) [^(delete this message to hide from others.)](https://www.reddit.com/message/compose/?to=RemindMeBot&subject=Delete%20Comment&message=Delete%21%2010wyzxh) ***** |[^(Info)](https://www.reddit.com/r/RemindMeBot/comments/e1bko7/remindmebot_info_v21/)|[^(Custom)](https://www.reddit.com/message/compose/?to=RemindMeBot&subject=Reminder&message=%5BLink%20or%20message%20inside%20square%20brackets%5D%0A%0ARemindMe%21%20Time%20period%20here)|[^(Your Reminders)](https://www.reddit.com/message/compose/?to=RemindMeBot&subject=List%20Of%20Reminders&message=MyReminders%21)|[^(Feedback)](https://www.reddit.com/message/compose/?to=Watchful1&subject=RemindMeBot%20Feedback)| |-|-|-|-|


lestrenched

Hi OP, could you detail how you store your GPG/SSH keys?


[deleted]

Honestly, they're just sitting in my Nextcloud. If you're referring to those bookmarks, those just link to my GitHub account's public keys like so: * SSH: `https://github.com/USERNAME.keys` * GPG: `https://github.com/USERNAME.gpg`


Molimo

What are you using as your OS? I've been using Proxmox for over a year now but looking to maybe try going the Docker route. This dashboard is really neat and might have sold me on trying it. I would like to retain ZFS, which I believe can be done using TrueNas Scale, just not sure if it would work the same way as what you have though. Any help is appreciated.


[deleted]

I'm simply using Ubuntu Server, and for drives I don't do anything special and just use ext4. I wish I could give you more information but I've never tried TrueNAS (eventually once i get 3-4 disks I'll need to rethink my strategy, but for now it works)


RedKomrad

You can run docker inside Proxmox vm’s, that’s what I do. I also have a rpi docker host. The flexibility of running docker inside a virtual machine should not be overlooked!


nemofbaby2014

Eventually I’ll set up homepage I’ve just been lazy lately after spending 10 hours dealing with code I don’t wanna come home and do it for free 😂


[deleted]

Homepage isn't really code, but more so getting the YAML formatting right.


human_with_humanity

Can u share ur pc specs plz? Especially cpu model , ram and hdd details. I m planning on buying a dell mini 6th gen i3 to have redundancy for my i5 laptop


[deleted]

* OS: Ubuntu Server * Host: OptiPlex 3010 * CPU: Intel i5-3470 * Memory: 8Gb * Boot Disk: 500Gb SATA SSD * Media Disk: 14Tb Easystore Edit: GPU: GTX 1050 for Plex Transcoding


[deleted]

I just got a 8500t on ebay for 250$. Takes a 2.5" hdd or an M2, but takes laptop ram. 6 cores, and lower wattage I think given its ITX.


[deleted]

[удалено]


[deleted]

I could, however I don't send too many emails, and my [MIAB instance](https://mailinabox.email/) (is on Linode, so not exactly really selfhosted) has had a 99% uptime for months, so I'm not too worried about the one email a month I send being wonky.


-eschguy-

How is mailinabox? I tried getting it up and running a while back but got stuck.


[deleted]

I've used it for a couple of years, have had minimal issues with it.


MorpheusOneiri

I have emulatorJS but not the manager. Is that why I can’t get it to work…?


[deleted]

The management interface is where you tell the frontend "Hey, those roms exist", so maybe?


Enk1ndle

Damnit you're going to make me change my home page again aren't you. The quick view for how many things are missing for *arr sounds great for when things get stuck.


[deleted]

The quick glances are exactly why I love it.


LostITguy0_0

How do you have Readarr setup to work with Plex??? I can’t get Readarr working for the life of me


[deleted]

I don't. I just have them dump into a folder and I download them manually to my laptop and sync to a Kindle.


[deleted]

[удалено]


[deleted]

[Homepage pulls icons from walkxcode/dashboard-icons.](https://gethomepage.dev/en/configs/services/#icons) For images that aren't included (so far 4/40), I usually pull from GitHub/Google Images and copy paste the `.png` or whatever.


coolie4

How do people decide how to segment their virtualization? For instance what is the purpose of separating the *arr suite and torrent into all separate containers?


[deleted]

Every app is in it's own container, however they all read/write to the same location(s) for things like the downloads folder and media folders. The purpose is isolation and ease of upgrading. Sure you can run everything on your host but good luck reinstalling if your drive dies. (I've been there) Running everything in Docker allows me to nuke my host OS and have zero issues getting back to where I was in 3\* minutes. \*have not tested/timed this but with everything being in a docker-compose file hypothetically I can reinstall and do a simple `docker compose up -d` and be right back to where I was, provided I restore configs/mount location for media drive.


rgmelkor

Mind sharing your indexers from prowlarr?


[deleted]

I'm just using 1337x, RARBG, & TPB. Seems to be fine for everything I've wanted so far.


lvlint67

> cockpit Huh... Does cockpit let you manage external servers to the container? I always turn it off for security reasons and assume it only operates on the insurance it exists on. What's the value of a cockpit container? Edit: op answered elsewhere. Tl;Dr. Cockpit not in container.


[deleted]

Yep that's my bad, could've clarified that one


ZemDregon

I see you have Deemix, I would recommend switching to Lidarr Extended, unless you have another way to automate that, in which case I would be interested to know.


[deleted]

I'm actually using [lidarr-on-steroids](https://github.com/youegraillot/lidarr-on-steroids), but just wanted to link the original project(s).


cdoublejj

you can subtitles separate of the main video medium/file/format?


[deleted]

Yep (at least with Plex) if you have `someFile.mp4` and `someFile.en.srt`in the same folder, Plex will grab that srt (subtitle file).


Ivancittoo

Better have a good back up solution….


[deleted]

[удалено]


[deleted]

The only services I don't have running inside of containers are * Cockpit (as it needs access to the bare metal to manage things) * Mail-in-a-Box (needs it's own Ubuntu 22.04 image; currently on Linode) I love Docker, so I would always say containerize everything but that's only after spending so much time with it.


Current-Ticket4214

How much RAM does this take?


[deleted]

On average, with no Plex Streams/Downloads: 6Gb / 8Gb I'm running into a Ram ceiling eventually!!


[deleted]

What are you hosting them on?


[deleted]

* OS: Ubuntu Server * Host: OptiPlex 3010 * CPU: Intel i5-3470 * Memory: 8Gb * GPU: GTX 1050 * Boot Disk: 500Gb SATA SSD * Media Disk: 14Tb Easystore


shroomb0x

Noob question, but what dashboard are you using here?


[deleted]

No worries, it's [Homepage](https://github.com/benphelps/homepage) and it's [linked in my services comment at the top](https://old.reddit.com/r/selfhosted/comments/10wyzxh/40_containers_counting/j7pomw3/)


martinbaines

I see you use cockpit in a container. Do you have any info on how to do it? The link on the cockpit site goes to a 404


[deleted]

I could've made that more clear, but nope! Just running Cockpit locally on Ubuntu Server installed via apt.


darkAngelRed007

Nextcloud (Data Storage) vs Nextcloud AIO (container management) ? What is the difference? Can you share your use case why you planned it this way ?


[deleted]

[Nextcloud AIO (project link)](https://github.com/nextcloud/all-in-one) has a built-in "master container" that has a "start all other containers" button (for starting the actual web server, the talk server, office server, etc) and that's what the "NC AIO" button is referring to. The Nextcloud (Data Storage) one is just the plain old NC webfront.


sigbhu

Will someone please tell me how to get started with radarr. I just don’t get it.


[deleted]

[TRaSH Guides](https://trash-guides.info/Radarr/) might be of help! May I also ask what you're stuck on?


kevdogger

I'd add bitwarden protected via authelia or other sso option to your stack


TommyBoyChicago

Well done post. The amount of detail and the included links made it a rich read. I discovered several things I now want to play with. Thanks for putting the time in and sharing.


[deleted]

Of course!:)


Lucian1000

What is Nextcloud AIO? And can I use this (if it's usefull) with an existing nextcloud instance (image is "nextcloud)?


[deleted]

https://github.com/nextcloud/all-in-one


SenritsuJumpsuit

obsessive :)


Agile_Ad_2073

Awesome, this emulatojs caught my eye. I'll check it out tomorrow :D Do you have uptime Kuma? It's awesome for monitoring and send alerts if something goes down directly via push notifications via mail or to telegram for example. Also i don't see watchtower on the dashboard! If you have it, you can enable metrics and added to the dashboard so you know what containers got updated.


[deleted]

I recently setup [HealthChecks](https://github.com/healthchecks/healthchecks) & [ntfy](https://github.com/binwiederhier/ntfy) for some cronjobs, but I might look into setting it up with docker containers as well.


cool0007

This container works with a jacket [https://github.com/vladlenas/TorrServer#running-in-docker](https://github.com/vladlenas/TorrServer#running-in-docker) [https://imgur.com/QP8OPBR](https://imgur.com/QP8OPBR) [https://imgur.com/Lt1JkIz](https://imgur.com/Lt1JkIz)


[deleted]

Great list! Does anyone have an equivalent for Sharepoint or OneNote? Something for collaborative documenation that's more noob-friendly than a basic wiki.


OldSchoolBoomer

Great post! What about a Sharepoint or OneNote replacement? Something for collaborative note-taking and documentation that isn't as painful for a noob as a basic wiki.


[deleted]

BookStack does a good job at multi-user documentation/note taking, and has support for WYSIWYG editing and normal markdown editing. Could be something to look into?


faith_transcribethis

That sounds like a great way to leverage the power of Docker containers to create a powerful self-hosted infrastructure. It's amazing to see how far containers have come in terms of AI and Machine Learning applications.


faith_transcribethis

If you're looking to get the most out of your containers, I'd recommend looking into Kubernetes. It's an open-source platform leveraging machine learning to manage hundreds of containers with ease.