I never understood how to use Docker, what makes it so special? I would really like to use it on my Rapsberry Pi 3 Model B+ to ease the setup process of selfhosting different things.

I’m currently running these things without Docker:

  • Mumble server with a Discord bridge and a music bot
  • Maubot, a plugin-based Matrix bot
  • FTP server
  • Two Discord Music bots

All of these things are running as systemd services in the background. Should I change this? A lot of the things I’m hosting offer Docker images.

It would also be great if someone could give me a quick-start guide for Docker. Thanks in advance!

  • slazer2au@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    6 months ago

    IMHO with docker and containerization in general you are trading drive space for consistency and relative simplicity.

    a hypothetical:
    You set up your mumble server and it requires the leftpad 3.7 package to run. you install it and everything is fine.
    Now you install your ftp server but it needs leftpad 5.5. what do you do? hope the function that mumble uses in 3.7 still exists in 5.5? run each app in its own venv?

    Docker and containerization resolve this by running each app in its own mini virtual machine. A container running mumble and leftpad 3.7 can coexist on host that also has a container running a ftp server with leftpad 5.5.

    Here is a good video on what hole docker and containerization looks to fill
    https://www.youtube.com/watch?v=Nm1tfmZDqo8

    • MaximilianKohler@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      6 months ago

      Doesn’t that mean that docker containers use up much more resources since you’re installing numerous instances & versions of each program like mumble and leftpad?

      • slazer2au@lemmy.world
        link
        fedilink
        English
        arrow-up
        2
        ·
        6 months ago

        Kinda, but it depends on the size of the dependencies, with drive space bing so cheap these days do you really worry about 50Mb of storage being wasted on 4 different versions of glib or leftpad

  • marcos@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    6 months ago

    Try to run something that requires php7 and something else that requires php8 on the same web server; or python 2 and python 3.

    You actually can, but it’s not pretty.

    (The thing about a declarative setup isn’t much of a difference, you can do it for any popular Linux distro.)

    • MaximilianKohler@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      6 months ago

      Doesn’t that mean that docker containers use up much more resources since you’re installing numerous instances & versions of each program like PHP?

      • marcos@lemmy.world
        link
        fedilink
        English
        arrow-up
        2
        ·
        6 months ago

        Oh, sure, the bloat on your images requires resources from the host.

        There is the option of sharing things. But, obviously that conflicts a bit with maintaining your environments isolated.