Hi all, I’ve been noticing a pattern in self-hosting communities, and I’m curious if others see it too.

Whenever someone asks for a more beginner-friendly solution, something with a UI, automated setup, or fewer manual configs, there’s often a response like:

“If you can’t configure Docker, reverse proxies, and Yaml files, you shouldn’t be self-hosting.”

Sometimes it feels like a portion of the community views complexity as a badge of honour. Don’t get me wrong, I love the technical side of self-hosting. I enjoy tinkering, breaking things, fixing them, learning along the way. That’s how most of us got into it.

But here’s the question: Is gatekeeping slowing down the adoption of self-hosting?

If we want more people to own their data, escape Big Tech, and embrace open-source alternatives, shouldn’t we welcome solutions that lower the entry barrier?

There’s room for everyone:

  • people who want full control and custom setups,

  • people who want semi-manual but guided,

  • and people who want it to work with minimal friction.

Just like not every Linux user compiles from source, but they’re still Linux users.

Where do you stand? Should self-hosting stay DIY-only or is there value in easier, more accessible ways to self-host?

My project focuses on building a tool that makes self-hosting more accessible without sacrificing data ownership, so I genuinely want your honest take before releasing it more widely.

  • obsoleteacct@lemmy.zip
    link
    fedilink
    English
    arrow-up
    1
    ·
    12 minutes ago

    My experience is that runtipi turned docker into an app store. The technical barriers to entry have never been lower. There are so many helpful voices out there that I’ve never really had to ask anyone a unique question because someone else has typically asked whatever I need to know and been answered.

    I do think there are very reasonable arguments to be made that when you are opening a server containing your personal data, to outside access, you probably should be cautioned about your technical limitations. Even if it’s not pleasant to hear.

    I honestly don’t think it’s a great idea for most people (myself included) to casually dabble in server administration. There’s a pretty big margin for error. Unfortunately it’s the only private solution for the time being. I don’t trust anyone else.

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

    Nah, I don’t think its being gatekept. I got into self hosting earlier this year, so I have pretty fresh eyes as a new novice.

    This community here has been an incredible resource for learning and asking questions, and people here are generally very helpful and kind.

    “If you can’t configure Docker, reverse proxies, and Yaml files, you shouldn’t be self-hosting.”

    • No, and I don’t see this perspective pushed. You do have to eventually learn how to do these things though if you want to be able to selfhost in most capacities.

    Is telling people they have to learn traffic laws before driving gatekeeping driving now?

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

    I tried to get my head around this too and wrote this a while ago: https://lemmy.world/post/34986579 – I called it localhosting, and it’s about some ideas that could bring more people into the boat.

    I haven’t made much progress unfortunately, but I do believe that selfhosting needs to become more accessible for non techies. It’s a pity how many great open-source selfhostable alternatives are out there, and how little people can actually install and maintain them. This gap is wild to me.

  • dotslashme@infosec.pub
    link
    fedilink
    English
    arrow-up
    3
    ·
    2 hours ago

    Absolutely agree. I have been thinking of starting a selfhost guide that takes you through the different ways to selfhost and the basic concepts of it, but gave up because I’m a shit writer and my experiences are mostly docker, k8s and Terraform/OpenTofu.

  • RipLemmDotEE@lemmy.today
    link
    fedilink
    English
    arrow-up
    14
    ·
    edit-2
    4 hours ago

    This post seems like rage-bait or engagement-bait, especially given OP’s account is less than a day old.

    • TeddE@lemmy.world
      link
      fedilink
      English
      arrow-up
      4
      ·
      2 hours ago

      I don’t inherently agree. Gatekeeping often is a magnified issue for novice users. Perhaps they came over with the latest reddit exodus, saw recommendations for self hosting on the new platform, got pushback and created an account to complain. I appreciate the concern, but I don’t think it’s valid to assume because the account is new, it must be a troll.

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

    I agree with a lot of the folks here. I don’t think it’s gate-kept. It’s just part of self hosting. I have a YouTube channel dedicated to teaching people about self josting, open source, and how to get it all running. There are great projects out there that provide incredibly powerful UIs, TrueNAS, OpenMediaVault, Unraid, Proxmox, NextCloud, HomeAssistant, NetBird, Pangolin, NGinX Proxy Manager, Portainer, and so many more. All designed to make self hosting easier and safer. I know 8 or 10 other creators who also do self hosting and how to’s. It does require learning, time, and dedication. As does anything worth while.

  • electric_nan@lemmy.ml
    link
    fedilink
    English
    arrow-up
    3
    ·
    3 hours ago

    Check out Yunohost. In my experience it is way easier to setup and manage than docker. I’ve been using it for years and it continues to improve and add more supported software.

    • Officer_Pickles@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      2 hours ago

      I’ve had a quick first look at Yunohost and it seems very memory intensive. What are you hosting and how much RAM do you have installed?

  • Fedegenerate@lemmynsfw.com
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    3 hours ago

    There should be both. Minimal config + gui options for people just getting into the hobby, or just want the thing. And a more open option for people who hit the limits of the first, or to do interesting shit, or to repeatably build a thing.

    I go back and forth on my server. During summer I wish it was all Docker YAMLs so I can press “update” in Dockge and then enjoy the weather.

    But, I also do non-typical things. Users have a rPi in their house that captures requests and routes them through Tailscale to my server for remote access without a VPS or opening ports.

    I’m not too technical so I often struggle setting things up, and documentation can be less than helpful at times, sometimes I really wished there was a gui or wizard, but it’s doable.

  • RaivoKulli@sopuli.xyz
    link
    fedilink
    English
    arrow-up
    17
    ·
    5 hours ago

    If you’re hosting stuff visible to the wider world and you don’t really know what you’re doing you might have a bad time. But also just going for it is how you learn.

    • r0ertel@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      4 hours ago

      I’m self hosting to learn. I’ve been hacked before and I lost stuff and then I refined my technique and started over again. Nothing I do is “mission critical”, so I now have the mindset that it will fail, I will lose data and time and I will get hacked. Honestly, it’s helped me to be better at home and at my workplace to have this mindset. Always plan for failure (and keep backups).

  • Avid Amoeba@lemmy.ca
    link
    fedilink
    English
    arrow-up
    10
    ·
    edit-2
    5 hours ago

    “If you can’t configure Docker, reverse proxies, and Yaml files, you shouldn’t be self-hosting.”

    If this is an example of gatekeeping, I think you are misjudging.

    Whenever self-hosting there’s a very real risk of exposing your private data to the internet. Potentially a lot more private data than you’d otherwise expose via cloud providers. This risk necessitates a basic understanding of some of the importand bits and how to operate them securely. If not for that, then anything would go.

    Understanding docker, reverse proxy, and YAML which is used to configure those is part of probably the simplest way to get to secure self-hosting. I’d add a self-hosted VPN to access local resources. I’m not aware of a magic UI solution that does it all and securely. Docker compose files are very accessible. A couple of those followed by docker compose up -d and you have a basic env up and running.

    Generally the lack of knowledge in X or Y doesn’t mean there’s necessarily an easier path than learning X and Y and that you’re being gatekept by being told you have to learn X and Y. Some things are harder than others. Buying Apple Cloud and setting it up is easier than self-hosting Nextcloud. I don’t think that should be the case, but today it is as far as I’m aware.

      • Avid Amoeba@lemmy.ca
        link
        fedilink
        English
        arrow-up
        2
        ·
        edit-2
        2 hours ago

        Yes, but self-hosting does whatever the HOWTO, YouTube vid or AI slop the user follows tells them to do. If the user doesn’t know the basics, how could they know what an instruction for activating UPnP does or opening a NAT port does and why that might expose their data? Laymen don’t even understand what making theie stuff publicly accessible means. It might simply mean “Yay I can access my stuff on the go.” 😄

        If on the other had the user learns the basics, they can tell when a doc instructs them to do something dangerous and they can do something about it to avoid disaster.

  • moonpiedumplings@programming.dev
    link
    fedilink
    English
    arrow-up
    5
    ·
    edit-2
    3 hours ago

    Yeah. I’m seeing a lot a it in this thread tbh. People are stylizing themselves to be IT admins or cybersec people rather than just hobbyists. Of course, maybe they do do it professionally as well, but I’m seeing an assumption from some people in this thread that its dangerous to self host even if you don’t expose anything, or they are assuming that self hosting implies exposing stuff to the internet.

    Tailscale in to you machine, and then be done with it, and otherwise only have access to it via local network or VPN.

    Now, about actually keeping the services secure, further than just having them on a private subnet and then not really worrying about them. To be explicit, this is referring to fully/partially exposed setups (like VPN access to a significant number of people).

    There are two big problems IMO: Default credentials, and a lack of automatic updates.

    Default credentials are pretty easy to handle. Docker compose yaml files will put the credentials right there. Just read them and change them. It should be noted that you still should be doing this, even if you are using gui based deployment

    This is where docker has really held the community back, in my opinion. It lacks automatic updates. There do exist services like watchtower to automatically update containers, but things like databases or config file schema don’t get migrated to the next version, which means the next version can break things, and there is no guarantee between of stability between two versions.

    This means that most users, after they use the docker-compose method recommended by software, are manually, every required to every so often, log in, and run docker compose pull and up to update. Sometimes they forget. Combine this with shodan/zoomeye (internet connected search engines), you will find plenty of people who forgot, becuase docker punches stuff through firewalls as well.

    GUI’s don’t really make it easy to follow this promise, as well. Docker GUI’s are nice, but now you have users who don’t realize that Docker apps don’t update, but that they probably should be doing that. Same issue with Yunohost (which doesn’t use docker, which I just learned today. Interesting).

    I really like Kubernetes because it lets me, do automatic upgrades (within limits), of services. But this comes at an extreme complexity cost. I have to deploy another software on top of Kubernetes to automatically upgrade the applications. And then another to automatically do some of the database migrations. And no GUI would really free me from this complexity, because you end up having to have such an understanding of the system, that requiring a pretty interface doesn’t really save you.

    Another commenter said:

    20 years ago we were doing what we could manually, and learning the hard way. The tools have improved and by now do most of the heavy lifting for us. And better tools will come along to make things even easier/better. That’s just the way it works.

    And I agree with them, but I think things kinda stalled with Docker, as it’s limitations have created barriers to making things easier further. The tools that try to make things “easier” on top of docker, basically haven’t really done their job, because they haven’t offered auto updates, or reverse proxies, or abstracted away the knowledge required to write YAML files.

    Share your project. Then you’ll hear my thoughts on it. Although without even looking at it, my opinion is that if you have based it on docker, and that you have decided to simply run docker-compose on YAML files under the hood, you’ve kinda already fucked up, because you haven’t actually abstracted away the knowledge needed to use Docker, you’ve just hidden it from the user. But I don’t know what you’re doing.

    You service should have:

    • A lack of static default credentials. The best way is to autogenerate them.
      • You can also force users to set their own, but this is less secure than machine generated imo
    • Auto updates: I don’t think docker-compose is going to be enough.

    Further afterthoughts:

    Simple in implementation is not the same thing as simple in usage. Simple in implementation means easy to troubleshoot as well, as there will be less moving parts when something goes wrong.

    I think operating tech isn’t really that hard, but I think there is a “fear” of technology, where whenever anyone sees a command line, or even just some prompt they haven’t seen before, they panic and throw a fit.

    EDIT and a few thoughts:

    adding further thoughts to my second afterthought, I can provide an example: I installed an adblocker for my mom (ublock origin). It blocked a link shortening site. My mom panicked, calling me over, even though the option to temporarily unblock the site was right there, clear as day.

    I think that GUI projects overestimate the skill of normal users, while underestimating the skill of those who actually use them. I know people who use a GUI for stuff like this because it’s “easier”, but when something under the hood breaks, they are able to go in and fix it in 5 minutes, whereas an actual beginner could spend a two weeks on it with no progress.

    I think a good option is to abstract away configuration with something akin to nix-gui. It’s important to note that this doesn’t actually make things less “complex” or “easier” for users. All the configs, and dials they will have to learn and understand are still there. But for some reason, whenever people see “code” they panic and run away. But when it’s a textbox in a form or a switch they will happily figure everything out. And then when you eventually hit them with the “HAHA you’ve actually been using this tool that you would have otherwise ran away from all along”, they will be chill because they recognize all the dials to be the same, just presented in a different format.

    Another afterthought: If you are hosting something for multiple users, you should make sure their passwords are secure somehow. Either generate and give them passwords/passphrases, or something like Authentik and single sign on where you can enforce strong passwords. Don’t let your users just set any password they want.

  • BootLoop@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    74
    ·
    edit-2
    8 hours ago

    If you can’t configure Docker, reverse proxies, and Yaml files, you shouldn’t be self-hosting

    Yes, absolutely.

    Configure Docker

    if you cannot run docker compose up or understand the basics of what it’s doing, you should not be self hosting. Yes, Docker can be difficult to troubleshoot but you need to understand where your data is being stored and generally self hosting projects using Docker are easy to set up.

    reverse proxies

    Implying exposing your server to the Internet. Yes. 100%. If you do not know what you’re doing, you should not. This is dangerous to your machine and to your data.

    Yaml files

    This is a plain text file. You can open it with Notepad or your operating system’s equivalent. Editing a text file to enter some default parameters is a low bar and if you can’t edit a text file, you’re going to get caught up in some other part of self hosting

    • l3db3tt3r@piefed.social
      link
      fedilink
      English
      arrow-up
      4
      ·
      5 hours ago

      I think you’ve missed the point OP is trying to communicate. It’s not that these things aren’t relevant, highly important, and good caution/warning. It’s the gate that people are creating with these no depth explainers. “you need to understand” “if you don’t know” – then fail to provide direction to people who want to know, to learn these things, to figure out where to start; that’s the gate.

    • otacon239@lemmy.world
      link
      fedilink
      English
      arrow-up
      22
      ·
      8 hours ago

      You made pretty much every point exactly how I was going to make it.

      I will mention that even as a pretty experienced sysadmin, learning Docker, reverse proxies, and relevant config files took ages because there are treated as assumed knowledge.

      Every YouTube video on Docker is 30 minutes shorter than they should be, and terminology for reverse proxies is really confusing if you’re not already familiar.

      It’s great to say you shouldn’t use these if you’re not familiar, but these are also probably the most poorly taught subjects in computing right now from my experience.

  • atzanteol@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    40
    ·
    edit-2
    8 hours ago

    “Has anyone noticed that medical doctors gate-keep people doing open heart surgery?”

    Why do you assume self-hosting is and can be trivial? It is NOT for everybody. You should have some base level of technical knowledge. You should expect to need to learn some things. It’s not a badge of honor, it’s experience.

    My project focuses on building a tool that makes self-hosting more accessible without sacrificing data ownership

    Good luck with that. Don’t get your users pwned in the process. You’re now responsible for the security of people who think “opening a command line” is too difficult.

    • Domi@lemmy.secnd.me
      link
      fedilink
      English
      arrow-up
      28
      ·
      7 hours ago

      Self-hosting is trivial and everyone can do it.

      Exposing services to the internet is not.

      Just like everyone doing open heart surgery on dummies is fine, everyone self-hosting in their own network is fine. You can buy hardware right now that connects to power and wifi and you are self-hosting.

      • atzanteol@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        5
        ·
        6 hours ago

        Self-hosting is trivial and everyone can do it.

        So is open heart surgery. Unless you want it to end successfully.

        • PriorityMotif@lemmy.world
          link
          fedilink
          English
          arrow-up
          4
          ·
          4 hours ago

          I wouldn’t equate installing proxmox on an old pc to open heart surgery. It’s pretty basic stuff and you can follow guides on how to install services in a container or vm. People are interested in things like pihole, home assistant, arr stacks, nas, and better control over their network. It’s definitely not rocket surgery.

      • TrickDacy@lemmy.world
        link
        fedilink
        English
        arrow-up
        6
        ·
        6 hours ago

        The users who are being talked about here probably don’t get that exposing your machine to the Internet carries risk. That’s the point.

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

          There is literally a thread somewhere on my Lemmy I need to try and find just recently that shows this perfectly. Someone made a thread asking how they can self host their images for backup from their phone and naturally everyone pointed them to immich. And they immediately started complaining and bitching that they could not access it from outside their local network. Instead of asking how to fix that they were like what the hell is the point if I have to be on the same Wi-Fi this is stupid. And they basically did not want to engage with the people being like hey you need to either make a reverse proxy or open a port on your router. They should not be self hosting

    • MalReynolds@slrpnk.net
      link
      fedilink
      English
      arrow-up
      2
      ·
      5 hours ago

      Using wireguard to VPN into your home network is mostly trivial (using tailscale to do so is actually trivial, for my usage of the word, but introduces an untrusted company into the mix), opening your local network to the outernet is not, expect pain.

    • Phoenixz@lemmy.ca
      link
      fedilink
      English
      arrow-up
      5
      ·
      6 hours ago

      I do not agree

      Yes, it sometimes can be difficult and frustrating, but so long as someone, anyone, is willing to try and learn and fail and retry, they can get my help

      Have you forgotten that you too started at 0?

      • atzanteol@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        7
        ·
        6 hours ago

        Have you forgotten that you too started at 0?

        Not at all. In fact I remember the day my server was hacked because I’d left a service running that had a vulnerability in it. I remember changing passwords, calling my bank to ensure there had been no fraudulent charges, etc. I remember “war driving” to find vulnerable WiFi networks. I remember changing default passwords on a service setup by a client of mine.

        As I said - it’s not gate-keeping it’s experience.

        Yes, it sometimes can be difficult and frustrating, but so long as someone, anyone, is willing to try and learn and fail and retry, they can get my help

        Teaching is “gate-keeping” apparently. You can’t tell somebody that they need to learn something! You just need to give them a link to a url and say “run this thing as root and your stuff will work - totally not a scam tho”.

        • moonpiedumplings@programming.dev
          link
          fedilink
          English
          arrow-up
          1
          ·
          5 hours ago

          Not at all. In fact I remember the day my server was hacked because I’d left a service running that had a vulnerability in it.

          Was this server on an internal network?

  • Encrypt-Keeper@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    4 hours ago

    Yes and it’s so funny to me as somebody that works in datacenter and cloud infrastructure for public apps for a living. All the gatekeeping is done by hobbyists without the faintest clue but all the confidence in the world, or click ops internal IT sysadmins grossly overestimating their self worth.

    Be safe, ask questions, and fuck what the haters think.