I see Docker mentioned every other thread and was wondering how useful it is for non development things, and if so what they are.

  • JVT038@feddit.nl
    link
    fedilink
    English
    arrow-up
    11
    ·
    4 months ago

    Docker is a container manager, but that doesn’t say anything if you don’t know what containers are.

    Containers are basically isolated apps. For example, take something like Nextcloud. Nextcloud can run in a Docker container, which means that it runs in an isolated environment completely separated from the user’s system. If Nextcloud breaks, the user’s server won’t be affected at all, because it’s running isolated.

    Why is this useful? Well, it’s useful because dependencies and such automatically update. Nextcloud for example, is dependent on PHP and if you install Nextcloud directly on your server, you’ll need to ensure that PHP 8 has been installed and set up properly. If PHP (or the required PHP extensions) aren’t properly installed, Nextcloud won’t work. Or, maybe if there’s a Nextcloud update that requires a new version of PHP (PHP 9 or 10 in the future), you’ll have to manually update PHP to the newer version.

    All that dependency management is completely gone with containers. The container itself automatically installs and sets up a proper environment for the app that’s running. So in the case of Nextcloud, the PHP binaries, extensions, and all the other stuff is all automatically included without the developer having to do anything at all. Just run one command and your entire Nextcloud instance is automatically updated.

    • tal@lemmy.today
      link
      fedilink
      English
      arrow-up
      1
      ·
      4 months ago

      Also, if server software running in a container gets compromised, hopefully the container can contain the compromise from spreading to the rest of the system.