Or maybe a two click solution? :)

  • @GustavoM
    link
    English
    22
    edit-2
    11 months ago

    Removed by mod

    • @ElectroVagrant
      link
      English
      711 months ago

      Instructions unclear, I’ve broken international communications:

    • @CannaVet
      cake
      M
      link
      English
      611 months ago

      He’s out of line, but he’s right.

    • BetterNotBigger
      link
      English
      411 months ago
      docker run hello-world
      

      I’m one of you now.

      • @Willer
        link
        English
        111 months ago

        docker compose -p hello-world down

  • @Disregard3145
    link
    English
    2011 months ago

    Self hosting what?

    In general

    1. Install docker
    2. Copy and paste docker run commands from the getting started guide
    3. Learn from mistakes
    • aeternum
      link
      fedilink
      511 months ago

      It’s so easy to self host these days. I remember when you’d have to fuck around with Apache configs and fuck around with app config files etc. Now you just run docker. It’s so great these days!

      • zib
        link
        fedilink
        211 months ago

        I’m still fucking with the apache configs (I fucking hate apache…). As someone with no docker experience whatsoever, are there any getting started guides you would recommend for someone looking to make the switch?

        • ComMcNeil
          link
          fedilink
          311 months ago

          Youtube offers a lot of material on what Docker is and how it works.
          For ease of use, you can use Portainer, which makes managing docker containers very simple

          • aeternum
            link
            fedilink
            111 months ago

            There’s also Yacht, that has some predefined packages that you can install.

      • Terrasque
        link
        fedilink
        111 months ago

        Oh, and different libraries, and compiling software to get the features you need, and the pain of moving something from one server to another because there was some unique weird environment setup needed on the host just to get it running.

        And these days, just docker the shit out of everything.

      • or4n
        link
        fedilink
        111 months ago

        Oh, those were the days :D Apache + PHP + MySQL. Then multiple hosted software on that same server. You were screwed when one app needed newer PHP and some other stuff didn’t run with new PHP.

        • aeternum
          link
          fedilink
          111 months ago

          haha yeah. Those were the days. Kids these days have it easy. Did I mention “Get off my lawn!”?

    • mr.nEJC
      link
      English
      411 months ago

      Also learn how to translate docker commands to docker-compose.yml

      • @snekerpimp
        link
        English
        211 months ago

        docker-compose helped me wrap my head around docker. I can use run commands now, but prefer to either modify a compose file or create my own to spin things up.

        • @manwichmakesameal
          link
          English
          111 months ago

          Same here. I kept using the docker run commands that usually show up in Docker hub but started making my own compose files. So much cleaner feeling. I can keep everything all nice and neat in a single folder now. Makes backing up much easier too.

          • @snekerpimp
            link
            English
            111 months ago

            Running stacks is easier too. My entire media stack minus Plex is all in the same compose file. Need to change anything, just edit the docker-compose and up -d

            • @manwichmakesameal
              link
              English
              111 months ago

              Yep, this is what I do with my “media acquisition” stuff. I have Jackett, Sonarr, Radarr, Transmission all run from a single compose file.

    • @HeavyRaptor
      link
      English
      411 months ago

      I agree but use docker-compose instead!

    • or4n
      link
      fedilink
      211 months ago

      I might add that don’t just mindlessly copy-paste things. Try to understand what those commands do and why they are needed.

    • sentient_loom
      link
      fedilink
      111 months ago

      Okay. I keep reading about docker. What’s the difference between a docker and just installing an app on rented server space?

      Does each dock (?) have its own server? (Apache or nginx or whatever?)

      Does each dock host a whole site, or do you have a dock for your database and a dock for your web app?

      • soft_frog
        link
        fedilink
        311 months ago

        Docker is basically a virtual machine image you write your software in. Then when you run the software you don’t need to worry about compatibility or having the right dependencies installed, it’s all included in the docker image.

        Think of Docker as being Nintendo cartridges that you can take to any friends house, plug them in, and play. Servers can run more than one Docker container.

        The approach greatly simplifies writing code and having it work on your server, reduces errors, and adds a layer of security.

        • @ElectroVagrant
          link
          111 months ago

          I’ve read and reread, listened and relistened to info on docker/containers and I still feel like I’m missing something tbh.

          Let’s say you have a docker container for something and it’s for a Linux distro, that won’t run on another OS, will it? Maybe not even a different Linux distro from the one it was made for (e.g. Ubuntu or Arch or Fedora or whatever).

          To go off your example, Docker’s not like an expansion module to make your Switch games work on a PlayStation or Xbox…Right? There seems to be some kind of mixed messaging on this, the way they’re so readily recommended (which seems to be related to a presumption of familiarity that often isn’t there toward those inquiring).

          I guess I’ve also been confused because like…Shouldn’t old installers handle bundling or pulling relevant dependencies as they’re run? I’d imagine that’s where containers’ security benefits come into play though, alongside being virtualized processes if I’m not mistaken.

          • @Disregard3145
            link
            211 months ago

            For simplicity its easiest to imagine it as a simulator or emulator. Its not trying to be your machine (called the host machine) pretend it doesn’t actually use your os, or software.

            Imagine each container is a fresh new machine on your desk with a blank hard drive. The image is basically the result of a set of instructions (a Dockerfile) that docker follows to install all the stuff you need to get the machine running.

            Normally it starts by installing an os like alpine Linux (alpine publish this docker image and you simply build on top of that)

            Then you install any extra utilities and software you might need to run the programming, maybe python or Java (again there are images themselves based on alpine managed and updated by official sources)

            Finally you install what you want and tell the computer that’s what to run when it boots up (often the software you want to run gives an official docker image which has done all this for you)

            So when you run a docker image its actually done all this setup for you already and just stored the resultsin a way that it can apply it straight to your shiny new container in an instant and be ready.

            Docker compose is instructions on how to set up a bunch of computers with a network.

      • TooTallSol
        link
        fedilink
        211 months ago

        What’s the difference between a docker and just installing an app on rented server space?

        Functionally? Not much. But people who selfhost typically want everything on computers they own. Whether it’s for learning purposes, or to not have their stuff on “someone else’s computer” selfhosting usually means you’re running software on computers you own, almost always within your own house.

        Does each dock (?) have its own server? (Apache or nginx or whatever?)

        Each docker image usually has a web server built in. The philosophy of docker is that it contains everything needed to run the app. Even a small linux OS (LibELEC or Alpine are favorites for docker images). So while you’re not managing the web server in a docker image each docker image will have its own web server if web access is needed

        Does each dock host a whole site, or do you have a dock for your database and a dock for your web app?

        Docker the program is what runs all the docker images on a computer. Each docker image is built as per the software’s developer. Some docker images will have a web app and a database combined into a single image, while others will expect a separate database server running independent of the image (It won’t care if the database server is a docker image or not; just that it has access)

    • @[email protected]
      link
      fedilink
      English
      011 months ago

      To be fair thats pretty much the IT gig in general, not the docker part but the rest copy/paste run commands, then learn from whatever you screw up couple of years later you might very well end up working in IT

  • hitagi (ani.social)
    link
    fedilink
    English
    1411 months ago

    I think you should just choose whatever software or project you want to selfhost, read how to do it, and learn by doing.

    I’m a complete idiot but I learned how to self host from trying to set up a Jellyfin server on my Windows desktop. Now I host game servers, Matrix with bridges, Discord bots, and this Lemmy instance that I’m in. I (re)learned how to use Linux and fell in love with it too.

    It’s all about reading the manual I guess.

    • BetterNotBigger
      link
      English
      411 months ago

      This is how I got a career in Software Engineering, literally had a strong motivation to build a clan website for my Counter-Strike 1.6 crew and I just ended up learning by maintaining self-hosted websites, forums, and voip. Kept doing it over and over by building other projects and then realized people pay for this skill…

  • @[email protected]
    link
    fedilink
    English
    13
    edit-2
    11 months ago

    Depends on what you want to self-host. In general, I would advise against self-hosting anything before you familiarise yourself with the basics of *nix, networking and cyber security.

    You at least need to know enough to make sure that whatever you host is only available within your local network and is inaccessible from the outside.

    Once that’s ensured, go nuts, experiment, learn, evolve.

    In terms of how to start, really depends on your budget, what hardware you can spare, how much space you have at your place etc.

    For the most basic playground it’s enough to have a raspberry pi or similar, or a very old laptop / desktop computer.

    For something more swanky you can get old Dell servers (e.g. R420) online for around 100$ or so. They are quite power hungry though. Or you can get yourself a NUC and use that.

    If all of this sounds like too much work, just get yourself QNAP / Synology NAS and see what it can do for you (it is way more limited in terms of options, but easier to setup and you can still have your Plex / file sharing / docker containers).

    • @GreatBlue
      link
      English
      311 months ago

      Instead of a Raspberry Pi you can look into used/refurbished Thin Clients which are way cheaper than a Pi at the moment.

      I would strongly recommend to start experimenting in your local network too and not rent a VPS in the internet. There is a very high risk it will end up in someones botnet, if you don’t know what you’re doing. For your local network, make sure to not forward any ports from the internet into your LAN and disable UPnP and the like. After that you should be pretty safe from direct attacks from the internet.

      For more detailed tips you should tell, what you want to self host. Start small and learn along the way.

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

      I would like to self host a lemmy instance.

      I know enough to have setup an ubuntu server with docker containers and servers on my local network, but except a minecraft server never exposed any kind of server to the web.

  • @zaggynl
    link
    English
    9
    edit-2
    11 months ago

    You could go through the following route:

    • purchase something like a small Synology NAS and learn how to set up the networking/firewall bits
    • buy/repurpose a used desktop/laptop, install something like yunohost/unraid
    • buy parts for your own server, put it together, use the same own server but install proxmox, setup VMs/containers
    • use the same own server but install debian, play around with docker/docker-compose/ansible

    If you don’t have the means to get new hardware, you can use hyper-v or virtualbox for free on Windows or virtualbox/virt-manager on Linux on existing hardware.

    Simple project to start with: install pihole and configure it as your DNS adblocking filter at home

    • install iphole on a VM/PC/raspberry pi that is connected to your home LAN
    • configure your PC or router to use the pihole host as DNS server
    • test various websites you know that have ads before and after using pihole

    While doing things like these, keep notes what you do by day, using those notes, put together your own howto manuals. Do not be afraid to fail, sleep over it and try again, don’t be afraid to ask specific questions here or on other forums, IRC.

    • @[email protected]
      link
      fedilink
      English
      411 months ago

      I am currently using yunohost.

      I report that it works out of the box within the local network.

        • @[email protected]
          link
          fedilink
          English
          111 months ago

          currently struggling to make use of zerotier to do that.

          all the DNS stuff is like magic for me.

          Did you take the route via a fixed IP and a bought domain?

            • @[email protected]
              link
              fedilink
              English
              111 months ago

              yes I know about the domains but port forwarding at my router is yet to be impossible for me. also I am unsure if I am ready to open my network to the outside yet.

              do you rely on the built in safety measures or do you have additional security measures implemented?

              • @[email protected]
                link
                fedilink
                English
                111 months ago

                Yunohost provides good set of tools to secure home server (Fail2Ban). Additionally, I use SSH on different port and with pubkey authentication. My Nextcloud instance uses geoblocker and 2FA. I am waiting for 2FA for Yunohost SSO (it should be added in Yunohost 11.x) It is good to not make all apps available in open way. I have some of them hidden with Yunohost SSO system. I do not host apps, that can be used anonymously, for example copy-paste tools or Nitter.

                Not all routers provided by ISP support port forwarding. It can be locked for you. If you have normal IP address (even dynamic) you should be able to open this ports. My friend had to call his ISP and ask for opening the ports. Another way is to buy second router and use first router in bridge mode (which I do, because I started using OpenWrt).

        • @[email protected]
          link
          fedilink
          English
          111 months ago

          yes kind of an alternative.

          but i think it is even more since it also takes care about proxies, domains and everything gives you a nice UI for all and gives you implemented packages.

        • @[email protected]
          link
          fedilink
          English
          111 months ago

          In some way yes, but Docker is containerization engine, which can be used to selfhost stuff. Yunohost is special OS for selfhosting and only selfhosting. Apps installed using Yunohost are not containerized, and they are made for easy deployment.

  • @[email protected]
    link
    fedilink
    English
    511 months ago

    What would be the point of self hosting then?

    Generally speaking installing stuff on a raspberry pi with docker and accessing it over a vpn is pretty safe and already straightforward.

  • @Gompje
    link
    English
    411 months ago

    Hmm maybe Unraid with the community store? When you got unraid running its just a matter of selecting an app from the store and hop: it runs. Kinda…

  • ShinusTP
    link
    fedilink
    311 months ago

    If I remember correctly, Yunohost does something similar, and it’s fairly easy to setup. Anyone with experience who can say something more about it?

  • NoiseColor OP
    link
    English
    311 months ago

    What about renting a server and running it there?

  • Flagship6407
    link
    fedilink
    211 months ago

    I got started (with minimal knowledge and a love for tinkering) by installing proxmox on an old computer (i3 with 8gb of ram) and then using Proxmox Helper scripts https://tteck.github.io/Proxmox/. I run home assistant in a vm within proxomox and have a docker instance running in a container in proxmox. It’s all been fairly easy so far, although I’m not sure I’d call it a one- or two- click solution. I got started from the home assitant community, and I’m new to the self hosted community, so I may do things a little differently from others around here.

  • HTTP_404_NotFound
    link
    fedilink
    English
    111 months ago

    If, you use kubernetes, I can give you manifests to make it basically a two click install.