Hey everyone! I’m sort of still green for selfhosting, but I wanted to share my setup so far:

The following services are selfhosted in docker

  • Audiomuse (smart music tagging, mood based and all that)
  • Navidrome for music hosting
  • Jellyfin for TV shows (not a lot) and Films (not a lot again, but steadily increasing)
  • Radicale for serving contacts/TODOs/calendar
  • SFTPGo to act as my drive
  • Kavita for ebooks and manga (I have tons of both)
  • Glance for homepage
  • forgejo for git forge hosting

The system specs are kind of visible in the homepage, so I won’t spell them out here again. Mostly an old optiplex running arch, though I want to change it to nixos later on.

System tools:

  • nushell for shell
  • calibre for ebook management and tagging + fanficfare plugin to download fanfictions
  • Caddy for reverse proxy (so I don’t have to remember ports)
  • netbird for VPN (also because it allows me to set wildcard DNS resolution for nodes, so I don’t have to set up a dedicated pi-hole or adguard)
  • Handbrake and ffmpeg for processing videos and such
  • beets for tagging music
  • a sysinfo script to generate system information for glance to consume
  • Probably other things too, I’m forgetting

Everything is accessible only via netbird, and external inbound connections are firewalled off

Apart from that, I eventually plan on adding the following as well:

  • Immich for photo hosting
  • Vaultwarden for passwords
  • Gollum (still debating on alternatives) for a webUI for my notes
  • Paperless-NGX

I’m still thinking on more that I can add. Note that whatever I add should not need an inbound connection/stable IP address, since I don’t intend to expose the server to the public. Any suggestions/tips? Thanks!

UPDATE: Forgot to add, I’d probably add homebox too, for inventory management 😅

UPDATE 2: I’m silly, I forgot that I’m also looking into self-hosted RSS feed readers 😆

  • Decronym@lemmy.decronym.xyzB
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    11 hours ago

    Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:

    Fewer Letters More Letters
    DNS Domain Name Service/System
    Git Popular version control system, primarily for code
    RPi Raspberry Pi brand of SBC
    SBC Single-Board Computer
    SFTP Secure File Transfer Protocol for encrypted file transfer, over SSH
    SSH Secure Shell for remote terminal access

    [Thread #57 for this comm, first seen 20th Jul 2026, 18:10] [FAQ] [Full list] [Contact] [Source code]

  • Kangy@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    8
    ·
    edit-2
    19 hours ago

    I don’t see many people recommend this and not sure why but I’d recommend looking at Arcanedocker containers management. It’s got a nice UI and very easy to use!

    • irmadlad@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      17 hours ago

      Interesting. I’ve heard of Arcane, but never dabbled. From the demo, it looks pretty tight. I see it also gives you ‘vulnerabilities’ kind of like Maintenant, but built in. Nice!

      • Kangy@lemmy.dbzer0.com
        link
        fedilink
        English
        arrow-up
        2
        ·
        16 hours ago

        Oh yeah it has a lot of nice features and the vulnerabilities it pretty in-depth, once it done it provides recommendations for fixing the vulnerabilities as well.

        I currently have mine configured to check for updates, update and prune automagically then provide a report of what’s been done to a private discord server

        • irmadlad@lemmy.world
          link
          fedilink
          English
          arrow-up
          2
          ·
          edit-2
          16 hours ago

          Wow! So it’s Maintenant, watchtower, Portainer, and a few other apps rolled into one. That’s pretty awesome. I’m using Portainer and have been for a long while. It’s good for what it does, and I know how to drive that bus. I’ll definitely have to check out Arcane tho. Especially if it replaces several apps that I don’t need to run, and make room for others. LOL

          Thanks for sharing.

          • Kangy@lemmy.dbzer0.com
            link
            fedilink
            English
            arrow-up
            2
            ·
            14 hours ago

            No problem! Once I’d trialed it for a week or so I dropped portainer completely. Arcane has been a pleasure for me to use and was relatively simple to set up and start using

    • innocentz3r0@programming.devOP
      link
      fedilink
      English
      arrow-up
      1
      arrow-down
      1
      ·
      14 hours ago

      That looks interesting! Although my current setup is simple, so I’d like to hear from you what arcane simplifies from experience

      • Kangy@lemmy.dbzer0.com
        link
        fedilink
        English
        arrow-up
        2
        ·
        12 hours ago

        Depending on what you want out of Arcane, like the user above said it condenses the need for 3 or 4 separate container into 1 container all managed within the same gui. For me the simplicity of having it auto update my containers, restarting them if they become unhealthy, pruning unused docker volumes, unused networks, old container images has made container management a breeze

        If you have any more specific questions outside of this or in general I’m happy to answer them 🙂

  • Carl Newton@feddit.uk
    link
    fedilink
    English
    arrow-up
    16
    ·
    23 hours ago

    Awesome! I have a very similar setup to you. I recommend installing pi-hole regardless and putting at least Hagezi’s normal block list on it, just for a sane web browsing experience.

    Home Assistant is also really good, because it includes a bunch of stuff that you probably wouldn’t first think of. For instance, I’m using its API to request the indoor temperature from my home thermostat and the outdoor temperature from a weather module that it has built in, and I’ve programmed it to let me know when it’s too hot to walk the dog, and when to open/close the windows in the house to keep it as cool as possible in this heatwave.

    I’m using LeafWiki for home documentation. A list of things I intend to try hosting, my backup strategy which I’m bound to otherwise forget. I’m thinking about putting all of our meals on there so that we when we get tired of a particular meal for a while, we can return to it when we’re at a loose end with the shopping.

    • innocentz3r0@programming.devOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      14 hours ago

      Oh wow! I didn’t know home-assistant can work in a closed network, but now it makes sense

      What does leafwiki do exactly?

      I also read your backup strategy below and that seems pretty interesting. My strategy differs. Have nothing in the volumes, unless it’s like docs or whatever lol. I do think that’ll change with things like Paperless, since I’d want to persist and carry over the tagging strategy or whatever.

      • Carl Newton@feddit.uk
        link
        fedilink
        English
        arrow-up
        1
        ·
        20 hours ago

        I keep my container volumes in sub-directory of that of the docker compose file and tar them up and put them somewhere safe. I spent ages trying to figure out how to back up a container, because I thought that the state of a database was in memory, which I suppose it is, but when you stop it, it’s just a bunch of files like everything else, so I elected to keep it simple. I’ve been thinking of creating a cron job to do it routinely. I’m not sure what you mean regarding the codeberg question.

  • ignominous_wombat@lemmy.ml
    link
    fedilink
    English
    arrow-up
    7
    ·
    20 hours ago

    You could look into:

    • SearXNG (aggregated search engine)
    • Mealie (recipe collection & meal planning)
    • CryptPad (replaces Google Drive)
    • oPodSync (gPodder-compatible podcast syncing server)
    • Sure or Actual (personal finance tracking)
    • Diun or Watchtower (container update tracker; IIRC Watchtower auto-updates by default, Diun does not)

    Thanks for posting, I gotta add the random facts to my Glance dashboard now.

    • innocentz3r0@programming.devOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      14 hours ago

      I’ve heard good things about SearXNG. I’ll be sure to check that out.

      I don’t see the need for cryptpad, since SFTPGo serves my purposes.

      I’d look into mealie, since I’m going to live alone and need to figure my own meals out. Perhaps Sure/Actual too!

      I am still looking at container management, right now I just manually update/backup everything.

      • ignominous_wombat@lemmy.ml
        link
        fedilink
        English
        arrow-up
        2
        ·
        12 hours ago

        Yeah, no worries if they’re not all useful to you. I still do the actual updates manually, Diun just tells me when to do them so I don’t have to routinely check project pages or follow an RSS feed.

      • ignominous_wombat@lemmy.ml
        link
        fedilink
        English
        arrow-up
        2
        ·
        11 hours ago

        So a few podcast apps support a service called gPodder, which provides cross-device syncing of subscriptions and episode progress, but the gPodder servers are slow and often time out, rendering the service useless.

        oPodSync is essentially a drop-in replacement for gPodder. My use case is that I listen to podcasts on both my desktop and my phone, and I want episodes to be seamlessly accessible on both devices without having to manually do anything.

        It’s very resource-light, so if you have any interest in podcasts at all it’s another piece of cool tech that gives you more control over your data. I used to use Player.FM, which is still a cool app, but I was paying them $13/year for a small handful of premium features I didn’t really think were worth that much.

    • Nerdulous@lemmy.zip
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      18 hours ago

      Couple things. Firstly watchtower is no longer maintained. An alternative is what’s up docker(WUD). It mostly functions the same but with a little more setup. I found this to be a near drop in replacement for me.

      Secondly as someone who’s consistently had a hard time with searxng, I would recommend degoog instead for aggregate search. It just feels so much more modern and usable. It’s immensely more simple to setup as well since configuration is mostly done in the interface instead of some several hundred line config file.

      • ignominous_wombat@lemmy.ml
        link
        fedilink
        English
        arrow-up
        1
        ·
        18 hours ago

        Ah, cool. Thanks for the additional info. I never kept up with Watchtower since Diun fit my needs. I’ll check out Degoog; I don’t mind several hundred line config files though, I usually go through all of the config/env settings prior to setting up a new service.

  • Reannlegge@lemmy.ca
    link
    fedilink
    English
    arrow-up
    2
    ·
    15 hours ago

    What do you have against pihole? If it is you want to see ads you can turn off the adblocking and see ads but you can use it for internal dns naming for services with Caddy as I find it more reliable than just Caddy across multiple systems.

    • innocentz3r0@programming.devOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      14 hours ago

      I don’t have anything against Pihole. It’s wonderful! I don’t have additional resources (like RPi), and I want to keep everything on one system, and my usecase is simple enough that netbird covers it, and I don’t know if I should pass all my DNS requests on both my phone and PC through my server (because iirc it’s finally the pihole system that’ll make the request?)

      Also I hate ads lol

    • innocentz3r0@programming.devOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      14 hours ago

      Thanks! Still remember the good old days, when I didn’t know how to set up docker compose properly (I don’t think I still do 🤣)

      But I’ve certainly come a long way, and it’s really fun! Also, I’ve seen you post here often! Cheers!

      • irmadlad@lemmy.world
        link
        fedilink
        English
        arrow-up
        3
        ·
        13 hours ago

        (I don’t think I still do 🤣)

        Learning is one of the facets of selfhosting that I genuinely get a kick out of, and as you say, it is much fun. It’s a very useful, very practical, and entertaining hobby for me. My servers are like a huge playground. I’m still that kid running out to the mailbox to get the latest edition of Byte magazine.

        Also, I’ve seen you post here often!

        Much to chagrin of some I am afraid. LOL I am an expert at nothing, but if I may be of service in any way, please do inquire. There are a lot of people here willing to help.

  • ExLisper@lemmy.curiana.net
    link
    fedilink
    English
    arrow-up
    3
    ·
    19 hours ago

    How are you accessing all of it? Custom URLs? Reverse proxy?

    Forgejo is for private projects only? Are you syncing them with some other git providers? If now how are you baking it up?

    Vaultwarden for passwords

    This one was the most tricky for me due to HTTPS but I finally got it working on desktop and android.

    • innocentz3r0@programming.devOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      14 hours ago

      I access it using the hostname of the device (since netbird and tailscale both let you do that)

      I also open docker ports only for localhost, and use caddy to reverse proxy subdomains to the respective localhost ports. Less port clutter from outside this way. Ofcourse things like SFTPGo’s SFTP port is an exception

      Also, vaultwarden requires HTTPS?? Ah drat, that’s not good :/ I don’t have experience with that.

      • ExLisper@lemmy.curiana.net
        link
        fedilink
        English
        arrow-up
        3
        ·
        13 hours ago

        Also, vaultwarden requires HTTPS?? Ah drat, that’s not good :/ I don’t have experience with that.

        Yes, the clients work only over HTTPS. Caddy can handle that:

        vaultwarden.cosmos.internal {
                tls /opt/caddy/certificate.crt /opt/caddy/private.key
                handle /* {
                        reverse_proxy http://localhost:8081/
                }
        }
        

        The certs need to be generated for this specific domain:

        openssl req   -x509   -newkey rsa:4096   -keyout key.pem   -out cert.pem   -sha256   -days 36500   -nodes   -subj "/C=XX/ST=StateName/L=CityName/O=CompanyName/OU=CompanySectionName/CN=cosmos.internal"
        

        Some more details are here: https://bitwarden.com/help/certificates/ under “Using a self-signed Certificate”