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.

  • PeteWheeler@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    4 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.
  • papertowels@mander.xyz
    link
    fedilink
    English
    arrow-up
    0
    ·
    5 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.

  • happydoors@lemm.ee
    link
    fedilink
    English
    arrow-up
    0
    ·
    6 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.

  • Kane@femboys.biz
    link
    fedilink
    English
    arrow-up
    0
    ·
    6 days ago

    First of all: take a breath!

    Pihole is a great start, and an awesome piece of software. As self-hosting is quite broad, there are quite a few options, so I have two suggestions that should still be relatively simple to continue with, and that I thoroughly enjoyed when getting started.

    1. Webservers: Something like Caddy, NGINX or Apache (Caddy being likely the simplest choice here), will allow you host your own website! If you open a port on your router, this website can also be accessed remotely (be careful! Without SSL, you should not expose any forms, to avoid those being leaked). A bit outside the realm of “self-hosting” — but Cloudflare allows you to setup SSL with relative ease and also allows you to link a domain your website.
    2. Game Servers: Many options in this space, so take a pick for a game you like! I am an avid minecraft enjoyer, and regularly setup modded servers to play with my friends. You can find some more info here on how to get started with a Minecraft server implementation called “Fabric”

    Have fun! And if there is something more specific you’re curious about, feel free to ask 😀

  • one_knight_scripting@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    6 days ago

    I’m curious where you are from and what hardware for self hosting you have. I also want to know what you are interested in self-hosting or learning.

    For me, my home lab started with networking. Yours doesn’t have to. For me, I had already achieved a standing time and was working to become a network engineer. Where are you on your path? In truth, starting with the network is not the best, mine required dedicated equipment: a firewall(UDM), switching(ubiquiti), and access points. This is expensive, so perhaps not the best place to stay.

    I would say that a good place to stay is with virtualization and a hypervisor. A hypervisor is intended to run virtual machines. I think starting with a hypervisor is a good idea because once you have a hypervisor, you can experiment with just about anything you want. Windows, Linux, docker, wherever your exploration takes you.

    Now, I would say the cheapest way to do this kinda depends on you. Do you have a .edu email address? If so, you should be able to receive free licensing for Windows Server through Microsoft imagine (previously called dreamspark). If not, do you have Windows 10/11 pro edition? I would say that Windows server may require dedicated hardware, but if you are already running Windows pro, then your daily driver pc will be capable of running hyper-v.

    If you have an old spare computer, you can make it a dedicated hypervisor with either the Windows Server option, or in my opinion the preferable Proxmox. Proxmox may take a little time to get acclimated to since it is Linux command line, but you already have experience with that on the pihole.

    Those are my recommended next steps to take. Though, there is plenty more that you can do. As others have said docker is a cool way to make some of this happen. I personally hate docker on Windows(it’s weird and I just want the command line not a UI). But you should easily be able to spin up Windows Subsystem for Linux, install docker and docker compose and get started there without needing any additional hardware. You could also do the same using hyper-v if you prefer and have a pro license.

    Regardless of what direction you choose to go, you can go far, you can succeed, and you can thrive. And if you run into any issues, post them here. Selfhosted has your back, and we are all rooting for you.

    Side Note: Hyper-v used to only be available on Windows Pro, but if someone knows for sure that it is available on home please let me know and I will update my post.

  • wer2@lemm.ee
    link
    fedilink
    English
    arrow-up
    0
    ·
    6 days ago

    A lot of people recommend Docker, but I will go further and say to specifically use Docker compose.

    That way all the configuration is in a file that you can backup/restore. Updating is really easy, and you will never forget one of the random flags you need to set.

    • PiHole - you can use the custom DNS to route domain names to you npm
    • npm (Nginx proxy manager) - allows easy access to all your services hosted on one box
    • Bronzie@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      0
      ·
      6 days ago

      I agree, but want to add Portainer. Compose in Portainer takes away the scary SLI/Terminal part.

      At least for me, hosting stuff went from «I have no idea what I’m doing» to «This sort of makes sense».

  • TedZanzibar@feddit.uk
    link
    fedilink
    English
    arrow-up
    0
    ·
    7 days ago

    If you want to give Home Assistant a try like others are suggesting, save yourself some time and hassle and install Home Assistant OS in a virtual machine. While you absolutely can run it in Docker you lose out on some neat quality of life improvements like add ons (which, funnily enough, are Docker containers pre-configured to hook in HA).

      • TedZanzibar@feddit.uk
        link
        fedilink
        English
        arrow-up
        0
        ·
        6 days ago

        HACS installs community integrations whereas addons are like external programs that hook in HA. You can do the same thing with HA in Docker by installing the addon containers separately and then hooking them in manually but HA OS makes it much simpler.

        For example I’m running the Mosquitto broker, Z2M, a Visual Studio Code server, diyhue, and Music Assistant as addons.

        Docco page about it is here: https://www.home-assistant.io/addons/

  • tburkhol@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    7 days ago

    If you’re already running Pihole, I’d look at other things to do with the Pi.

    https://www.adafruit.com/ has a bunch of sensors you can plug into the Pi, python libraries to make them work, and pretty good documentation/examples to get started. If you know a little python, it’s pretty easy to set up a simple web server just to poll those sensors and report their current values. Only slightly more complicated to set up cron jobs to log data to a database and a web page to make graphs.

    It’s pretty straightforward to put https://www.home-assistant.io/ in a docker on a Pi. If you have your own local sensors, it will keep track of them, but it can also track data from external sources, like weather & air quality. There a bunch of inexpensive smart plugs ($20-ish) that will let you turn stuff on/off on a schedule or in response to sensor data.

    IMO, Pi isn’t great for transport-intensive services like radarr or jellyfin, but, with a Usb HD/SSD might be an option.

  • liliumstar@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    0
    ·
    7 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.

  • bluGill@fedia.io
    link
    fedilink
    arrow-up
    0
    ·
    7 days ago

    Start small. The hard part isn’t installing a lot of software and getting it running. The hard part is keeping everything updated over time. So install one interesting service, and then figure out how the update process goes before installing another. Hopefully the worst thing that happens is you install services and use them only to have the computer fail in a few years after you depend on them and you can’t figure out how to get the data into the new version. There is also the very real possibility that your service is compromised by an attacker.

  • doodledup@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    7 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. Tailscale is also an option.

    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:

    • chjherzog@jlai.luOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      7 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?

      • curbstickle@lemmy.dbzer0.com
        link
        fedilink
        English
        arrow-up
        0
        ·
        edit-2
        7 days ago

        Here are a few of my favorites, some of which are exposed, some are not:

        • Mealie - Recipe management. Import recipes by URL is my favorite feature, then I tweak and try it out (I have to be gluten free, so this makes it easy to track what worked for us).
        • Homepage - a homepage to put quick links to all of my stuff, neat and clean.
        • Grafana - for visualization of current data of my systems, paired with Prometheus.
        • Technitium DNS - for all of my DNS needs.
        • Jellyfin - for all my media, let’s me pick out what my kids can see/watch without me having to look over their shoulder, along with being a great looking solution for me.
        • Immich - photo and video management

        All of these (and more, this is just a dsmple of favorites) run on Proxmox. I mostly use LXC over docker, personal preference.

        Home Assistant is probably the single most useful for me, already mentioned, just about everything at home is automated/controlled through there.

      • doodledup@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        7 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.

    • Telorand@reddthat.com
      link
      fedilink
      English
      arrow-up
      0
      ·
      7 days ago

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

      Thanks!