Please bear with me as I don’t know where else to ask.

I want to start to self host but do not know where to start. I would like to start small. Just something that might not be beneficial but to get my feet wet. It does not even have to be practical.

I am not tech illiterate and have my fair share of technology around me hut self hosting has always been a daunting task.

I am scared to start.

I am already using a PiHole at home but that was kind of plug and play and just worked.

I would be incredibly grateful if someone could guide me to some resource or tell me what an easy first step would be.

An FAQ or self hosting for dummies.

Most resources I found assumed some previous knowledge.

  • @[email protected]
    link
    fedilink
    English
    21
    edit-2
    14 days ago

    The easiest way to get started is using Docker. You can self-host most software using Docker straight from their Github with one command or copy-paste config.

    Do NOT expose (Port forward/NAT) your services to the internet if you don’t know what you’re doing. Use it locally using IP:port. If you want to use your services remotely, use a VPN tunnel like Wireguard (Available on Android and iOS too). Modern routers already support it out of the box. Tailscale is also an option.

    Later down the road when you start exposing services, I can recommend NPM as your proxy for easy host and certificate management. Expose as little as possible! For added security when exposing applications to the internet, expose your port using a VPS or Cloudflare and tunnel to your home using Tailscale or Wireguard.

    To not get overwhelmed you should start small and improve as you go. You don’t need to start with a datacenter in your garage right away. The most important thing is that you have fun along the way :)

    Great projects to get started:

    • @[email protected]
      link
      fedilink
      English
      314 days ago

      This is really helpful. I’ve been wanting to get started, like OP, but knowing how to do it feels overwhelming.

      Thanks!

    • @[email protected]OP
      link
      fedilink
      English
      214 days ago

      Docker seems the way to go for me now! Thank you for the nice write up.

      I definitely do not now what I am doing so the word of caution is greatly appreciated!

      The whole thing about remotely accessing is probably something I put on my ToDo list as soon as I get a service up and running. Nevertheless reading it and just knowing about Wireguard and Tailscale is a huge benefit to me.

      Is there a personal recommendation which of your listed projects to get started with?

      • @[email protected]
        link
        fedilink
        English
        114 days ago

        KitchenOwl and Pastes are probably the easiest to setup. Paperless is the most useful for me. Nextcloud can be a bitch to setup once you want to include Office functionality. I recommend the Nextcloud All-In-One to make it a bit easier.

        In addition to the ones listed above, I can also recommend Home Assistant if you don’t know it yet. If you like home automation you’re in for a treat.

  • clb92
    link
    fedilink
    English
    1114 days ago

    Learn how to use Docker. That’s gonna be a big help.

  • @[email protected]
    link
    fedilink
    English
    611 days ago

    Hello, I am also new at self hosting semi recently. There is a bit of a learning curve, but once your over the hump, it gets a lot better.

    First, 100% use docker desktop if your using windows. Most github projects have a docker file you can use. This will take out 90% of the setup required and you don’t have to worry about applications not working on your computer. Thats the point of docker, to remove the “doesn’t work on my computer” problem.

    Here are some independent github projects that I found useful for me and were simple to setup.

    • excalidraw - digital whiteboard. You don’t need to self host this, but its a fun little project. You can just go to excalidraw.com and have 100% of the same features (it is all saved in your browser’s cache).
    • mealie - I cook a lot so this is a nice ‘permanent’ cook book to have.
    • warracker - I always forget what I have warranties on, so this will be helpful for me.
    • Arr projects like sonarr, radarr, Jellyfin - sonarr and radarr is a good project to sink your teeth into (do not recommend using docker for this, I had issues with my docker container connecting to my external drives because I have Windows Home edition). This ecosystem is usually everyone’s first project along with pihole since its so useful. Sonarr and radarr will probably take you a week or weekend, Jellyfin will take like 5 min.
  • @[email protected]
    link
    fedilink
    English
    512 days ago

    Louis Rossman, a strong advocate for the right to self-repair, has an extensive, bottom to top guide on self hosting your own services. It starts from introducing what a modem is and what role it plays, and it ends with an entirely self hosted cloud. It comes in article as well as 13 hour video form. I would highly recommend this to anyone looking to get started self hosting - it doesn’t just introduce software you should learn, but it also shows you how to configure it.

  • Matt The Horwood
    link
    fedilink
    English
    514 days ago

    As a homelabber and systems admin, I would start with learning how to use Linux on the command line.

    It’s all well and good looking at docker, but if you don’t know how to move about or edit on the command line. Your going to get stuck real quick.

    Once your happy doing simple tasks on the command line, I would actually look at running something like wordpress on a pi or VPS. That will help you understand how to connect services together, and cement your basic command line knowledge.

    • @[email protected]OP
      link
      fedilink
      English
      114 days ago

      I am not unfamiliar with Linux.

      Kind of lucky/unlucky as a broke student I did not have money to buy a new Windows machine.

      Now I am kind of glad about it.

      Docker on the other hand I have had barely any contact with it so far. So I definitely check that out.

  • @[email protected]
    link
    fedilink
    English
    514 days ago

    My adventure into self-hosting started with a Synology NAS maybe 5 years (?) ago.

    With just the built-in software, I was able to replace Google Photos, Evernote, Dropbox, Google Calendar, Google contacts, and Google Play Music and Movies.

    Then as I learned how to use docker, I was able to replace more services.

    There may be “better” options out there beyond what Synology offers, but it’s been such a “set and forget” experience, that it’s easy for me to recommend them as an option.

    The biggest barrier, IMO, isn’t the learning curve, but the initial investment for the NAS + HDDs and the upgrade path as your storage needs grow.

    • marighost
      link
      fedilink
      English
      111 days ago

      This is where I’m at: a Synology running a few services like Plex for my family and friends. I’m hoping to learn more and help us all move from walled gardens even further. Some of Synology’s software can feel a little clunky to use but generally I’ve found it to work great despite my limited knowledge.

      • @[email protected]
        link
        fedilink
        English
        211 days ago

        Some of Synology’s software can feel a little clunky to use but generally I’ve found it to work great despite my limited knowledge.

        Yeah, I make regular use of some of their built-in apps (Note Station, Drive, Photos).

        But they aren’t perfect.

        For example, Note Station has no good way to export the data for use outside of Note Station (poor data portability) and Synology Audio just feels so outdated. Photos is their best software, IMO.

        The beauty of self-hosting this stuff is that you can use any third-party software that reads the files, and you’re good to go. Your music, videos, photos, and documents are available as you see fit.

  • Max-P
    link
    fedilink
    English
    514 days ago

    I feel like a lot of the answers in this thread are throwing a lot of things with a lot of moving parts: Unraid, Docker, YunoHost, all that stuff. Those all still require generally knowing what the hell a Docker container is, how to use them and such.

    I wouldn’t worry about any of that and start much simpler than that: just grab any old computer you want to be your home server or rent a VPS and start messing with it. Just pick something you think would be cool to run at home. Anything you run on your personal computer you wish was up 24/7? Start with that.

    Ultimately there’s no right or wrong way to do things. It’s all about that learning experience and building up that experience over time. You get good by trying out things, failing and learning. Don’t want to learn Linux? Put Windows on it. You’ll get a lot of flack for it maybe, but at the very least over time you’ll probably learn why people don’t use Windows for server stuff generally. Or maybe you’ll like it, that happens too.

    Just pick a project and see it to completion. Although if you start with NextCloud and expose it publicly, maybe wait to be more comfortable with the security aspect before you start putting copies of your taxes and personal documents on it just in case.

    What would you like to self host to get started?

    • @[email protected]OP
      link
      fedilink
      English
      114 days ago

      That takes away a lot of stress. Knowing to just get started and ignore the best approach instead of just a getting started approach and learn as you go.

      For the longest time I wanted to get rid if my google drive or google calendar and host one myself.

      Email as I have read is something more advanced but I would like to self host my email as well.

      Photos eventually too.

      As a lot of people have recommended nextcloud that seems like where my interest might be heading.

      As a starting point. Are there any hardware recommendations for a toy home server?

      • Max-P
        link
        fedilink
        English
        214 days ago

        As a starting point. Are there any hardware recommendations for a toy home server?

        Whatever you already have. Old desktop, even old laptop (those come with a built-in battery backup!). Failing what, Raspberry Pis are pretty popular and cheap and low power consumption, which makes it great if you’re not sure how much you want to spend.

        Otherwise, ideally enough to run everything you need based on rough napkin math. Literally the only requirement is that the stuff you intend to run fits on it. For reference, my primary server which hosts my Lemmy instance (and emails and NextCloud and IRC and Matrix and Minecraft) is an old Xeon processor close to a third gen Intel i7 with 32GB of DDR3 memory, there’s 5 virtual machines on it (one of which is the Lemmy one), and it feels perfectly sufficient for my needs. I could make it work with half of that no problem. My home lab machine is my wife’s old Dell OptiPlex.

        Speaking of virtual machines, you can test the waters on your regular PC by just loading whatever OS you choose in a virtual machine (libvirt if you’re on Linux, VirtualBox or VMware otherwise). Then play with it. When it works makes a snapshot. Continue playing with it, break it, revert to the last good snapshot. A real home server will basically be the same but as a real machine that’s on 24/7. It’s also useful to test things out as a practice run before putting them on your real server machine. It’s also give you a rough idea how much resources it uses, and you can always grow your VM until it fits and then know how much you need for the real thing.

        Don’t worry too much about getting it right (except the backups, get those right, verify and test those regularly). You will get it wrong and eventually tear it down and rebuild it better what what you learn (or want to learn). Once you gain more experience it’ll start looking more and more like a real server setup, out of your own desire and needs.

      • bluGill
        link
        fedilink
        013 days ago

        Email is often impossible. you can run your own server but you won’t be able to send email to many people because gmail and other larre providers will ignore everything from any ip address you can get. you endeup with email for only people on you server and the what is the point.

        just a warning there. Some do self host email but it is the most difficult to host. My life is much better now that I pay fastmail to handle my email.

        • Max-P
          link
          fedilink
          English
          112 days ago

          It’s not impossible, been running my own email server for about 10 years and I inbox pretty much everywhere. I even emailed my work address and straight to inbox. I do have the full SPF, DKIM and DMARC stuff set up, for which I get notices from several email provides of failed spoof attempts.

          Takes a while and effort to gain that reputation, but it’s doable. And OVH’s IPs don’t exactly have a great reputation either. Once you’re delisted from most spam databases / old spam reputation is expired, it’s not that bad.

          Although I do agree it’s possibly one of the hardest services to self host. The software to run email servers is ancient and weird, and takes a lot to set up right. If you get it wrong you relay spam and start over, it’s rough.

  • @[email protected]
    link
    fedilink
    English
    314 days ago

    Start with a VM on your computer and see what you want to do/need from there.

    Leaving a laptop on is (almost) free.

  • mesa
    link
    fedilink
    English
    314 days ago

    If you want an easy way to host, yunohost can be a good place to start.

  • @[email protected]
    link
    fedilink
    English
    214 days ago

    To start small setup a static website behind nginx. This requires you to create a basic website or copy a template, it goes somewhere in your filesystem, in linux /var/www is common. Once you have that, setup the nginx service and point it to that location. You can do this locally then expose it to the net or put on a VPS. Here is a dead simple guide presuming you have a remote server: https://dev.to/starcc/how-to-deploy-a-simple-website-with-nginx-a-comically-easy-guide-202g

    Once you have that covered, ensure you know how to setup ssh keys and such, then install, configure, and run services. From there, most things are easy outside of overly complicated configurations.

  • @[email protected]
    link
    fedilink
    English
    214 days ago

    Watch some YouTube channels like Jeff Geerling or Hardware Haven. They along with others, made the daunting task or self hosting manageable for me. Great tips with helpful pointers, and they lay things out fairly well, on their videos and their websites.

  • @[email protected]
    link
    fedilink
    English
    212 days ago

    I will go even ONE step further than others - if you are scared to start a software like Truenas scale that has a GUI has helped me. A lot of the options offered by others are great but can require a lot of command line stuff. There are a few OS’s out there that are more point and click that I had a lot of success with. Truenas scale runs the docker containers that others are recommending.

  • @[email protected]
    link
    fedilink
    English
    214 days ago

    If you look up “Dr. Frankenstein Discord” you’ll find the community that helped me get familiar with Docker. As in, several people held my hands for about 2 weeks non-stop. I can’t tell you enough how much I love that group. But containers aren’t the only way to go.

    I hear people talking about Proxmox a lot, and it seems (as far as I can tell) to be one of the easiest platforms for hosting many services one a machine. Next computer I set up, I’ll be going that route.

    Regardless of how you do it, the knowledge base and skills mostly transfer like a Venn diagram. The most important pieces to get started are hardware and patience. Everything else can be solved with online teamwork

    • @[email protected]OP
      link
      fedilink
      English
      114 days ago

      I will check out that community. Seems incredibly friendly and supporting!

      Proxmox is something in my distant future but regardless. I will hopefully get there eventually

      • @[email protected]
        link
        fedilink
        English
        114 days ago

        Having an environment like proxmox is very handy for learning and testing. When you find something to test, spin up a clean machine and you have a safe environment to learn that can be removed after. You can also try out different distros that way.

        I’d recommend setting up Incus instead however, it works fine on a desktop/laptop if you’re running a linux distro they support and don’t have a dedicated machine to use.

        They also have a very good tutorial/demo that shows the basics: https://linuxcontainers.org/incus/try-it/

  • @[email protected]
    link
    fedilink
    English
    214 days ago

    You can set up Bookstack and then use it to document everything you’re going to set up later!