I spent two hours today trying to figure out why Nextcloud couldn’t read my data directory. Docker wasn’t mounting my data directory. Moved everything into my data directory. Docker couldn’t even see the configuration file.

Turns out the Docker Snap package only has access to files under the /home directory.

Moral of the story: never trust a Snap package.

  • Samsy@lemmy.ml
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    10 months ago

    TIL, docker has a snap package, and can’t stop laughing. What’s next? A flatpak or AppImage?

      • redcalcium@lemmy.institute
        link
        fedilink
        English
        arrow-up
        0
        ·
        edit-2
        10 months ago

        Why does Docker has a snap version in the first place anyway? Did Canonical pester them to do it?

        Edit:

        Nope, it’s just Canonical went ahead and publish it there by themselves.

        This snap is built by Canonical based on source code published by Docker, Inc. It is not endorsed or published by Docker, Inc.

  • krash@lemmy.ml
    link
    fedilink
    English
    arrow-up
    0
    ·
    10 months ago

    But this is by design, snap containers aren’t allowed to read data outside of their confinements. Same goes for flatpak and OCI-containers.

    I don’t use snap myself, but it does have its uses. Bashing it just because it’s popular to hate on snap won’t yield a healthy discussion on how it could be improved.

    • thesmokingman@programming.dev
      link
      fedilink
      English
      arrow-up
      0
      ·
      10 months ago

      The issue here is that Canonical pushed the snap install without warning about its reduced functionality. I don’t think highlighting a wildly different experience between a snap install and the Docker experience people are used to from the standard package install is “bashing it just because it’s popular to hate on snap.” For example, if you take a fresh Ubuntu server 22 install and use the snap package, not realizing that snaps have serious limitations which are not explicitly called out when the snap is offered in the installation process, you’re going to be confused unless you already have that knowledge. It also very helpfully masks everything so debugging is incredibly difficult if you are not already aware of the snap limitations.