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

  • foremanguy@lemmy.mlOP
    link
    fedilink
    English
    arrow-up
    2
    arrow-down
    1
    ·
    9 days ago

    And what is the good way of deploying it? After pulling the image, how do we autostart it etc…

    • lka1988@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      5
      ·
      9 days ago

      The Docker documentation is pretty terrible, but it’s a decent start. Start by looking at docker-compose.yml files for the services you want to run and the write-ups for those.

      Something nobody ever told me, that I had to figure out myself, is that docker-compose.yml files can be placed anywhere you want.

    • atzanteol@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      3
      ·
      9 days ago

      At its simplest:

      docker run -d --name servicename --restart unless-stopped container

      That’ll get you going. Youi’ll have containers running, they restart, etc. There are more sophisticated ways of doing things (create a systemd file that starts/stops the container, use kubernetes, etc.) but if you’re just starting this will likely work fine.

      • foremanguy@lemmy.mlOP
        link
        fedilink
        English
        arrow-up
        1
        ·
        edit-2
        9 days ago

        Are they starting automatically at boot?

        EDIT : how do you run a container with a simple name instead of using his id?

        • atzanteol@sh.itjust.works
          link
          fedilink
          English
          arrow-up
          2
          ·
          edit-2
          9 days ago

          Yes - they’ll start automatically. There are other options for “restart” that define the behavior.

          You can give whatever you like to “servicename” and use that rather than the ID.

          For example:

          docker run -d --name mysite --restart unless-stopped nginx
          
          docker stop mysite
          
          docker start mysite
          
    • Itwasthegoat@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      arrow-down
      1
      ·
      9 days ago

      Create a systemctl service for it, create a cron, or of there is a lot of interconnectivity between your containers look at something like K3S.