I just start using my homelab to host some new good services, and I want to know what is the approach of a docker setup, what is the best distro for? How to deploy them correctly? Basically I’m a real noob in this subject. Thank you

  • ikidd@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    7 days ago

    Debian with the docker convenience script. Stay away from Ubuntu server, for the love of dog.

    Make a folder such as /stacks and put everything there by building docker compose stacks. I bind mount everything local to a subfolder with the docker-compose.yml for that application so when I restore it, it’s all in one spot, not spread all over the hell like docker likes to do if you don’t use bind mounts.

    Add lazydocker for getting easy log and stats access for each stack.

    Avoid bare docker run commands. It makes an unmanageable mess when you get more that a couple containers running.

    Consider using the nextcloud AIO master container. It runs docker containers inside a master container compose file, and it is by far the easiest way to manage and run nextcloud.

      • ikidd@lemmy.world
        link
        fedilink
        English
        arrow-up
        3
        ·
        5 days ago

        I found dozzle a bit rudimentary as it only does logs, but I liked that there was an android app to interface it.

        Lazydocker is more like Portainer on running stacks in that you can see logs, configs, stats and do operations on the stacks and components all from an SSH TUI.

    • moonpiedumplings@programming.dev
      link
      fedilink
      English
      arrow-up
      2
      ·
      6 days ago

      Debian with the docker convenience script.

      They seem to be moving away from this, and it’s not longer the first option on their install page

      On their debian page

      Use a convenience script. Only recommended for testing and development environments

      Also, it should be noted about the first option they recommend, Docker Desktop, that Docker Desktop is proprietary.

      I recommend just getting the docker.io and docker-compose from debian’s repositories.

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

        When I tried it last (a couple years ago), the docker snap was an untroubleshootable mess. I don’t like the idea of running Docker that way, in whatever version of a container that Canonical has come up with for snaps. It’s just looking for problems. Run an application with Snap if you want, but a whole container system? No thanks.

        • sum_yung_gai@lemm.ee
          link
          fedilink
          English
          arrow-up
          2
          ·
          6 days ago

          I just don’t use snaps and it works great for me. For docker I add their apt repository and install it like that.

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

          I wrote a script to remove snaps and install Docker as per the docker website. Works great mate.

          Plus you get the benefit of frequent updates.

          • numanair@lemmy.ml
            link
            fedilink
            English
            arrow-up
            1
            ·
            1 day ago

            One of their frequent updates completely broke docker on my system. Fortunately they did push the fix by the time I realized what happened.

  • Matt The Horwood@lemmy.horwood.cloud
    link
    fedilink
    English
    arrow-up
    1
    ·
    7 days ago

    I would start with a Debian os base, install docker and turn it into a swarm manager. Then look at stacks and how services work, if you find your running your host too hard. You can add a work host and stread out.

    Once you have docker swarm running, get portainer running. I use portainer as a visual whats happening on my swarm, but I use the docker cli to start and update all my stacks. I have my stacks in a git repository so that I have a backup and history of what changes I did.

    Now your a docker master, of sorts.

  • Dust0741@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    8 days ago

    Anything.

    Personally I use Debian. But Docker doesn’t care. I chose Debian because it is very stable and simple