• Thorry84@feddit.nl
    link
    fedilink
    arrow-up
    94
    ·
    1 year ago

    It’s really simple, it’s a container containing a virtual os, which runs a browser and a webserver to run the app. The app connects to several external api services to do it’s thing.

    It’s like, really simple!

    • PatMustard@feddit.uk
      link
      fedilink
      English
      arrow-up
      9
      ·
      1 year ago

      It probably was very simple for the kid who wrote it, just import everything and write a couple of lines to use all this stuff that already exists!

    • Dasnap@lemmy.world
      link
      fedilink
      arrow-up
      7
      arrow-down
      1
      ·
      1 year ago

      Gotta love using a base container image that is far too overkill for what you’re trying to run.

      • MotoAsh@lemmy.world
        link
        fedilink
        arrow-up
        1
        arrow-down
        2
        ·
        1 year ago

        I mean, isn’t the entire point of a container largely non-functional compared to good deploy/install scripts? Both are perfectly capable of guaranteeing a predictable functional environment for the app. The container is just easier to use, harder to accidentally render insecure, and easier to clean up.

        All of their benefits are NOT for the app itself.

        • jj4211@lemmy.world
          link
          fedilink
          arrow-up
          2
          arrow-down
          1
          ·
          1 year ago

          Harder to accidently render insecure? My experience is the opposite, that docker style containers frequently fail to update vulnerable dependencies.

          Also depending on context, I can say often the container is harder to use. Snap is probably the easiest to use of the solutions, flatpak makes cli invocation a pain, and docker style sucks entirely for interaction, but is fine if your primary interaction is via Web service once you set it up (but oh boy, adding a webui package means you get to mess with nginx or apache proxypass by hand, and each app may require subtly different parameters in proxypass).

          • MotoAsh@lemmy.world
            link
            fedilink
            arrow-up
            1
            ·
            1 year ago

            Docker is not in a competitor for snap and flatpak. They are tackling very differend kinds of installations.

            • jj4211@lemmy.world
              link
              fedilink
              arrow-up
              1
              ·
              1 year ago

              The person said “containers” so I was responding to both.

              However, docker containers could stand to learn a thing or two with how flatpak and snap compose a runtime. Applications can say “allow x, y, and z dependency layers to update independent of the application container”, versus the docker style of the app developer must own maintenance of the entire image.

              There may be reasonable differences with respect to how much of a users “real” files and environment are presented to a container in those scenarios, and functional differences like gui and networking suggesting different defaults, but image composition does not need differentiation for their use cases.

    • jj4211@lemmy.world
      link
      fedilink
      arrow-up
      2
      ·
      edit-2
      1 year ago

      I get to witness to enterprise services flavor of that. Where the company pays software architects that aren’t actually coding and coders not allowed to make architectural decisions.

      You have software that takes http? You need to rewrite it so that you only speak rabbitmq, and use it for every http request or Web socket message, don’t worry, we have a team that specializes in making http translate to rabbit mq, so you only have to rewrite the server code, another team will handle the http listener that translates to you.

      What’s that, you have a non http protocol? Well, the other team isn’t scoped to handle that, so you’ll need to convert your listener to rabbitmq and create a whole separate container to actually receive the packets in udp and then translate to rabbitmq. No “processing” software is allowed to speak anything but rabbitmq, and network listener containers are only allowed to dumb receive and Forward.

  • Heavybell@lemmy.world
    cake
    link
    fedilink
    English
    arrow-up
    40
    ·
    1 year ago

    How much you wanna bet the “dev” doesn’t realise chromium is a dependency, in this scenario?

  • whaleross@lemmy.world
    link
    fedilink
    arrow-up
    25
    ·
    1 year ago

    What do you mean you don’t have to restart your terminal software every afternoon when the four windows consume six gigabytes of RAM?