What I Self-Host

(viceconsole.fyi)

102 points | by BrunoBernardino 1 hour ago

16 comments

  • eleventen 22 minutes ago
    > Sonarr, Lidarr, Radarr, etc. Every time I read about setting it up, it just sounds like a resource-intensive mess that’s fundamentally prone to frequent breakage. That’s the opposite of what I’m looking for when choosing self-hosted services.

    I just checked on my *arr stack. Sonarr and Radarr idle at 157MB and 159MB of memory and approximately no CPU. Jellyfin currently idles at 330MB. I'm not sure where you got this impression from. I grant these tools are complicated and have somewhat clumsy UX, but they aren't especially heavy to run and are not fragile.

    OP, point your :robot: at https://github.com/subdavis/selfhosted/blob/main/docker-comp... and ask for an explanation. It's a single compose file that illustrates how the *arrs, transmission, and jellyfin all work together. I'm sure you can set it up :)

    • ChadNauseam 0 minutes ago
      [delayed]
    • benoau 2 minutes ago
      There's been two major disruptions in my experience.

      First was Lidarr went months unable to search/add musicians due to complications with how they were relaying those searches. It took them a long time to refactor that part of the software and make it usable again.

      Second was the retirement of Readarr, the ebook-version of this software, which was an absolute shame.

      But aside from that this is pretty much set-and-forget software. Although the setting is harder than it should be, should be much easier to favour smallest x265 rips at <resolution>, lossless audio, season rips with subtitles.

    • Cyph0n 8 minutes ago
      Indeed. The other thing to point out is that, once you have set them up, they will chug along fine for years with near zero input.

      Here is the stack I recommend:

      * Radarr (movies) with optional second instance for 4K versions

      * Sonarr (shows) with optional second instance for 4K versions

      * Sonarr (anime), separate instance to have control over quality settings

      * Prowlarr (tracker/indexer management)

      * SABnzbd (Usenet)

      * qBittorrent (torrents)

      I would also recommend consulting the TRaSH guide to tune your setup and ensure you’re grabbing quality releases. From there, the next logical step is Profilarr :)

    • birdsongs 18 minutes ago
      I think it just sounds intimidating if one hasn't tried, but they are really well designed pieces of software, that are relatively simple to set up (just have to go through the motions and connect everything with API keys).

      Highly recommend them to OP. My stack went down once in the past 4 years and it was my fault.

  • Lucasoato 1 hour ago
    > I prefer running services natively when possible, but will containerize complex services or those with many dependencies. Love: a service that’s a single Go binary. A service that only comes as a Docker compose file and wants to run MySQL, Redis, and three other containers? I’m already looking for an alternative.

    Ok, I respect your opinion, but remember that there are poor souls like me out there that actually love the opposite.

    • mtlynch 51 minutes ago
      > Ok, I respect your opinion, but remember that there are poor souls like me out there that actually love the opposite.

      All things being equal, why prefer Docker Compose? From my perspective, a single binary strictly dominates any Docker Compose solution.

      • asciimov 28 minutes ago
        Isolation from the main system, other services, and other dependencies.

        Easy to migrate to new system.

        Easy to upgrade and downgrade. When a new version causes an issue just restart it with an older version.

        One directory to backup and restore that contains all the services and their settings.

      • wilted-iris 23 minutes ago
        It’s the unified interface for me. Updates, logs, service management, network routing, config and storage mapping are all uniform and I don’t have to wrangle many slightly different implementations of each. Isolation from installed packages is a nice bonus.
      • turtlebits 39 minutes ago
        Its a single config that lets you run multiple services (and can keep them running), upgrades are just editing an image tag.

        Don't have to look at cli docs to figure out how to run it.

        Doesn't have access to my file system, logs are easy.

      • zzyzxd 21 minutes ago
        I don't use Docker but I love reading the compose file when a project has it. It is the quickest way for me to get a high level idea of this project's architecture. It's the best documentation :)
      • unshavedyak 48 minutes ago
        Some isolation is nice. I say some because I’m told it’s security is not to be trusted, but I still like that even a non nefarious binary has ootb boundaries on what state will persist.
        • Gigachad 16 minutes ago
          Docker isolation is likely good enough if you keep your kernel up to date and aren't allowing 3rd parties to run code. If you are running a CI service or something you need micro VMs. But to host your nextcloud server, docker is good enough, it's unlikely someone will both exploit nextcloud and the kernel if you are keeping them up to date.
      • dmtroyer 43 minutes ago
        for long-running services, I've never taken the time to learn something reliable like systemd. with Compose, I can see everything I need to know in one yml file and the commands to go with it. I also don't have to really understand any dependencies or their own configuration and can cleanly remove everything associated with that service with a few commands.
    • sergiotapia 55 minutes ago
      A big reason I chose Rust and Sqlite for my project was that end users could just run the small binary and be done with it. https://github.com/sergiotapia/joyscroller

      I think you can go very very far with this kind of setup especially if it's just for you.

  • turtlebits 27 minutes ago
    Running all these services without a declarative/standard way of deployment, ie docker compose or k3s/k8s is a bit mind boggling to me.

    I self host on a bunch of different hardware, OSes, providers. I want the least fiddling as possible.

    • jauntywundrkind 24 minutes ago
      Especially now when you can snap your fingers and get a semi responsible codified version. Heck just do what you want to them ask the LLM to port your work to something marginally better than a totally hand cobbled bucket of bits system.
  • scottydelta 14 minutes ago
    With the recent change in Bitwarden's license, not sure for how long they will continue to be self hosting friendly.

    I am also using Vikunja instead of trello.

    Tbh in general I am fine if the self hosted app uses postgres or a container Db instead of sqlite only.

  • ebrahimh 39 minutes ago
    Good article. I have many of the same services in my setup.

    Self-hosting email fully is tedious/unnecessary, but what you can do is mirror your various inboxes (Gmail, iCloud, proton, non-corporate outlook) with mbsync and use roundcube or some other frontend to view emails and compose.

    I use this to easily access mail from different services, and I can also send from any of them.

    I also have a seperate service that watches the mail directory and sends a ntfy.sh notification for new emails.

    It’s a bit complicated cause theres so many services but here are the quadlets: https://github.com/ebrahim37/infra-template/tree/main/homela...

    I implemented this about a month ago because the iphone Mail app was increasingly buggy.

    • gerdesj 5 minutes ago
      "Self-hosting email fully is tedious/unnecessary"

      If you IT, why do you particularly consider self hosting email as tedious?

    • birdsongs 15 minutes ago
      You can do this with Proton?? How does it handle decryption/encryption, etc?

      Would absolutely love to do this, proton frontend annoys me at times.

  • turtlebits 10 minutes ago
    Self hosting is great. The access part is hard.

    Pangolin was the missing piece I needed, to not expose my servers to the internet and easily have my services publicly accessible with built in auth.

    Tailscale kind of worked, but it was a hassle needing the client on mobile device and it being a VPN.

    With vibe coding, I have more of my own apps running than pre-built.

    • oscarteg 6 minutes ago
      What tools did you create yourself?
  • Havoc 1 hour ago
    To each their own but running that much stuff without proxmox would drive me insane. Especially the native stuff straight on the machine.
    • c45y 1 hour ago
      With some small systemd configs each native app is essentially a container these days. The overhead of unique kernels per app would really restrict what could fit on a small box like this

      DynamicUser and ProtectSystem keep me sane.

      • birdsongs 9 minutes ago
        Like the other person said, proxmox allows containers or full VMs, and the base OS takes less than 2 GB RAM.

        My jellyfin LXC idles at a few hundred megs of ram, shares the base debian kernel, and if anyone does ever break in, they don't get access to anything else, anywhere else on my server. (All media is also mounted read-only to the jellyfin LXC.)

        I really, really like it, just set it up recently. Everything in its right place.

      • Havoc 30 minutes ago
        Much prefer LXC + IaC to rebuild them, but much of a sameness
  • XCSme 31 minutes ago
    I've been building and self-hosting my own analytics platform[0] for 13+ years and never had any major issues with it.

    The advantage is that if I do want a specific feature, I can just add it, and I am never worried about subscription limits or surprise charged, because I host it on a fixed-cost VPS.

    Things don't really need maintenance and don't really break by themselves, the only time when they can sometimes break is when changing things.

    You do need to have a proper setup though, for stuff like disk space alerts, knowing the common gotchas of disabling settings that can cause issues, etc.

    [0]: https://uxwizz.com

  • jamesstidard 38 minutes ago
    Heya, nice read. I’m wondering how you managed to get LetsEncrypt certs minted when your caddy isn’t exposed to the public internet. Doesn’t LetsEncrypt need to make a request back as part of the handshake to mint/refresh the certificate?

    Would love to know as I wanted to do the same in the past and ended up self signing certs.

  • bix6 42 minutes ago
    For the self hosters: docker containers or not?

    They are so easy / portable but perhaps systemd is a better option as the author suggests.

    • kombine 1 minute ago
      My server is running on NixOS and I went with systemd containers - really happy with my setup. It was not at all difficult to set it up with Claude
    • LaurensBER 38 minutes ago
      Podman + systemd is how I run production workloads at work.

      For us it's the perfect balance between simplicity, observability (Beszel) and reliability. Not the right tool if you have dynamic workloads but definitely the right tool for boring and predictable workloads.

      At home I run K3S, it's awesome. It also breaks a lot and does add a whole bunch of complexity that I would only recommend if you enjoy tinkering and fixing things.

    • drdexebtjl 7 minutes ago
      [delayed]
    • Cyph0n 6 minutes ago
      Yes. NixOS running Podman containers is where I ended up after trying almost everything :)
    • rhymnz 37 minutes ago
      Personally I use docker with portainer to handle the stacks/containers, have done for many years. I like it.
    • jp191919 17 minutes ago
      For several years, Docker with portainer
    • ticoombs 32 minutes ago
      Docker containers are fine. I've moved between 5 NAS' over the years and docker has enabled it to be seemless.

      rsync data directories. docker compose up. Done.

      On the consumer or even prosumer nas products which have a semi-locked down system (ie Truenas/qnap/Synology). Technically you have root but as soon as you update the OS all/most of the changes end up being broken. Yes you could probably do something and deal with it. But personally I've spent too long babysitting it on the first and second nas that I no longer care.

    • overtone1000 34 minutes ago
      Why not have your cake and eat it too with quadlets?
      • nozzlegear 27 minutes ago
        Quadlets rule, I have tons of them configured for my professional and hobby/self-hosting services. Super convenient, I wish there was something equivalent for my Mac (launchd files just don't cut it).
  • lifeisloving 25 minutes ago
    Seems like dealing with this is a part time job. I commend it though.
  • jordand 42 minutes ago
    I recently bought a Lenovo Mini PC (01Q8X10) for under £300 that has a Snapdragon X1 CPU (and 32GB LPDDR5 RAM!) and it's turning out to be perfect for self-hosting running the newly released WSL Containers on Windows 11 with WSL 3 (it doesn't fully support Linux yet). Podman had some issues with WSL 3 that they're still releasing fixes for, but it's all working with that too.
  • ThrowawayTestr 1 hour ago
    After Google Assistant died I immediately installed Home Assistant on my old PC. Not as good, but at least it doesn't take 5 seconds to turn on a light like Gemini
  • austin-cheney 1 hour ago
    People twist themselves into a knot talking about AI as the future. Its more of a bubble waiting to pop. Self hosting is the real disruptive future.

    The hardware to accomplish most things that we rely on from cloud vendors is absolutely trivial. My own home server is a used super cheap and tiny machine. The hard disks don't even fit in the box and yet it has plenty of CPU and memory to spare.

    The software is getting easier to configure year after year eventually creeping to the point where elderly people too lost to use a remote will be running this stuff. The real challenge will be solving for easy access to private networks from public spaces across the internet. Right now everybody seems to be centering on vendor solutions like TailScale for this.

    • MostlyStable 1 hour ago
      I self host (I have a large overlap with the services in TFA), and love it. I will never go back and think that more people should self host (or at least...join small groups of people who designate one person to manage it for a small number of people).

      And believing that the current AI economy might have a period of rapid devaluation in the near future is pretty reasonable. But, much like the original .com bubble, the idea that AI as a technology will not survive and thrive through such a pop, and become an ever more important part of our future, is a belief that I can't comprehend. Anthropic and OpenAI very well may go belly up. AI as a technology isn't going anywhere.

      And as much as I'd like to believe that more people may self host more things in the future, self hosting will never, even if it was adopted by literally everyone, become as big a deal as AI, even if AI hit a wall tomorrow and didn't get any better than the current frontier models.

    • mtoner23 1 hour ago
      Self hosting has never been easier and I imagine the average person has never been further from trying it. No one will ever get anywhere close to hosting this much sruff
  • VCFundedGenYer 1 hour ago
    I stared self hosting in 2020 when Raspberry Pis were super cheap (not anymore :( ) and lots of things started becoming available in Docker. Haven't ever considered going back to the cloud. I love taking back full control.
  • scottydelta 54 minutes ago
    I have been self hosting for over a decade and recently have seen more people in my circle doing that and I have been helping them.

    At first it was hard but then i made it into a product. I am working on Tarvis.io which makes self hosting accessible to non technical users as well. It comes with installation assistant, ssl domains and backups inbuilt into it.

    You can install open source apps from a catalog or drop any github repo and it installs and run it for you.

    With Tarvis, I have been self hosting more since I am able to install and delete apps with one click, it makes it easy to try things.