You are not logged in.

#1 2018-10-30 18:24:06

es20490446e
Member
Registered: 2017-12-29
Posts: 34
Website

Do containers make sense in Arch?

Do you think that containers make sense in the realm of a rolling operating system like Arch?

I see the advantages of using them with fixed released operating systems, or with proprietary apps that shall work with older libraries.

But for libre software on rolling operating systems I'm unsure about it. What do you think?

Offline

#2 2018-10-30 18:31:41

x33a
Forum Fellow
Registered: 2009-08-15
Posts: 4,566
Website

Re: Do containers make sense in Arch?

It depends on your use case. For example, you already mentioned apps that only work with older libraries (proprietary or not), and it definitely makes sense in that case.

Offline

#3 2018-10-30 18:36:30

progandy
Member
Registered: 2012-05-17
Posts: 3,195

Re: Do containers make sense in Arch?

There are also different levels of containerization. You could use the base system for all libraries, but isolate running applications from each other.


| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |

Offline

#4 2018-10-30 21:12:06

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 20,475
Website

Re: Do containers make sense in Arch?

This is an easy one.  Containers never make sense.

Containers (assuming you mean flatpak and the like) are novel attempts to solve problems that were already solved long ago by static linking - but the containers simply do not solve the problem nearly as well.


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Online

#5 2018-10-30 22:03:46

es20490446e
Member
Registered: 2017-12-29
Posts: 34
Website

Re: Do containers make sense in Arch?

And server wise? Do you think that containers as Docker make any sense?

It just seems simpler to me to group related services in a single virtual machine, install what I needed with pacman, and keep updates rolling in as traditionally.

If I wanted to keep updates 100% safe simply to create a testing server, and upgrade the production one only if the first still worked. It still seems easier than having to create extra repositories for containers, automate all of it, and having to setup a Kubernetes cluster with all the upgrades and network configuration. It looks like over-engineering.

Last edited by es20490446e (2018-10-30 22:04:25)

Offline

#6 2018-10-30 22:23:35

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 20,475
Website

Re: Do containers make sense in Arch?

es20490446e wrote:

And server wise? Do you think that containers as Docker make any sense?

To me?  No.  But I am a cranky old fart.  Now virtual machines can make sense - and by some definitions they may be considered containers, but that's why I started by questioning the definition of containers: docker, flatpak, and the like just strike me as solutions in search of a problem (or vice versa).

Last edited by Trilby (2018-10-31 21:55:16)


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Online

#7 2018-10-30 23:19:39

Scimmia
Bug Wrangler
Registered: 2012-09-01
Posts: 7,088

Re: Do containers make sense in Arch?

Containers can make sense when used as a thinner, lighter VM. As app containers, I agree with Trilby.

Last edited by Scimmia (2018-10-30 23:25:37)

Offline

#8 2018-10-31 05:25:04

m47h4r
Member
Registered: 2018-08-23
Posts: 28

Re: Do containers make sense in Arch?

In my experience the best use for containers will be in IoT based environments that we do not have loads of resource but there is a desperate need for virtualization. Although just like when a knife is not useful to tighten a screw, containers are not useful in every scenario.


There is no dark side of the moon really, matter of fact, it's all dark.

Offline

#9 2018-10-31 16:58:11

eschwartz
Trusted User/Bug Wrangler
Registered: 2014-08-08
Posts: 2,559

Re: Do containers make sense in Arch?

Containers are extremely useful for building software in isolated environments, to ensure they don't accidentally autodetect something they shouldn't, for example. We use systemd-nspawn containers to build the official repositories.


Managing AUR repos The Right Way -- aurpublish (now a standalone tool)

Online

#10 2018-10-31 21:56:41

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 20,475
Website

Re: Do containers make sense in Arch?

I agree systemd-nspawn instances also makes a lot of sense.  But the original post seemed to be referring to the 'app containers' not vm instance containers - the former are what I find pointless.

If we're considering all sorts of containers, I find tuperware to be worthwhile for holding my lunch regardless of the OS I'm running on the computer I eat it in front of.  And I'd be useless without my coffee container in my hand.

Last edited by Trilby (2018-10-31 21:57:04)


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Online

#11 2018-10-31 22:06:40

headkase
Member
Registered: 2011-12-06
Posts: 1,831

Re: Do containers make sense in Arch?

I'll admit I'm a noob for containers so feel free to correct.  I thought at least some of the intent was to package in a manner that is independent of distribution.  For as long as you had native support for flatpak *then* you could run binary flatpaks on your system and that container would have all the specific versions of libraries needed as part of it so if your local system didn't it would still work.

So, if I'm not out to lunch, would flatpak and ilk make sense for a multiple-linux-flavour distribution-method?  I.e., is that a worthwhile problem to solve: packaging binary software independent of the target Linux environment?

Offline

#12 2018-10-31 22:13:14

eschwartz
Trusted User/Bug Wrangler
Registered: 2014-08-08
Posts: 2,559

Re: Do containers make sense in Arch?

headkase wrote:

I'll admit I'm a noob for containers so feel free to correct.  I thought at least some of the intent was to package in a manner that is independent of distribution.  For as long as you had native support for flatpak *then* you could run binary flatpaks on your system and that container would have all the specific versions of libraries needed as part of it so if your local system didn't it would still work.

So, if I'm not out to lunch, would flatpak and ilk make sense for a multiple-linux-flavour distribution-method?  I.e., is that a worthwhile problem to solve: packaging binary software independent of the target Linux environment?

You're correct, this would perform as expected and that's why flatpak et al exist.

And that's also what Trilby was explicitly stating disapproval for, on the grounds that "inventing a method for adding support for something that was never unsupported to begin with" is silly:

Trilby wrote:

This is an easy one.  Containers never make sense.

Containers (assuming you mean flatpak and the like) are novel attempts to solve problems that were already solved long ago by static linking - but the containers simply do not solve the problem nearly as well.

...

You don't need specific versions of libraries that are statically compiled, do you?

As Trilby once wisely said, this (flatpak) is using the shared library *file format* without actually *sharing* them... it's the worst of both worlds, you cannot update the whole system at once with security fixes, and at the same time, you get slower binaries due to searching for and loading external libraries.

Last edited by eschwartz (2018-10-31 22:14:26)


Managing AUR repos The Right Way -- aurpublish (now a standalone tool)

Online

#13 2018-10-31 22:29:42

Slithery
Forum Moderator
From: Norfolk, UK
Registered: 2013-12-01
Posts: 3,016

Re: Do containers make sense in Arch?

headkase wrote:

I'll admit I'm a noob for containers so feel free to correct.  I thought at least some of the intent was to package in a manner that is independent of distribution.  For as long as you had native support for flatpak *then* you could run binary flatpaks on your system and that container would have all the specific versions of libraries needed as part of it so if your local system didn't it would still work.

So, if I'm not out to lunch, would flatpak and ilk make sense for a multiple-linux-flavour distribution-method?  I.e., is that a worthwhile problem to solve: packaging binary software independent of the target Linux environment?

http://kmkeen.com/maintainers-matter/


No, it didn't "fix" anything. It just shifted the brokeness one space to the right. - jasonwryan
Closing -- for deletion; Banning -- for muppetry. - jasonwryan

aur - dotfiles

Offline

#14 2018-11-01 00:04:48

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 20,475
Website

Re: Do containers make sense in Arch?

The only point I'd add to the above is a response to this:

headkase wrote:

as long as you had native support for flatpak *then* you could run binary flatpaks

True.  But there's an added requirement to have native support for flatpak ... and for docker ... and for that other app bundle format ... and for the next app bundle format that comes along.  With static linking you need none of that.  This view of flatpak is different only in degree but not in kind from suggesting that win32 could be a great cross-distro app format as as long as you had native support for wine *then* you could run win32 binaries.

True.  But not wise (IMnsHO)

* IMHO rarely seems to follow humble opinions but rather somewhat controversial ones expressed boldy.  So I amit that this is in my not-so humble opinion, expressed boldly but not without respect to those who may disagree as there are many who do.


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Online

#15 2018-11-01 03:03:32

headkase
Member
Registered: 2011-12-06
Posts: 1,831

Re: Do containers make sense in Arch?

What about flatpak appliances?  A purpose-built configuration of software where the preconfiguration is the hard part and not whether or not it is elegant in a specific distribution whatever the cluster uses?

Offline

#16 2018-11-01 03:11:12

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 20,475
Website

Re: Do containers make sense in Arch?

Do you have an example?  How is distributing a configuration file difficult, dependent on distro, or aided by a container?


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Online

#17 2018-11-01 03:13:55

headkase
Member
Registered: 2011-12-06
Posts: 1,831

Re: Do containers make sense in Arch?

Trilby wrote:

Do you have an example?  How is distributing a configuration file difficult, dependent on distro, or aided by a container?

I apologize that I don't have a concrete example.  Purely hypothetical on my part, hoping you would elaborate on something new to me.  smile

Offline

#18 2018-11-02 15:25:43

juanfgs
Member
Registered: 2018-10-31
Posts: 10

Re: Do containers make sense in Arch?

If we are talking about docker, I use them for convenience, basically how other people use "vagrant". But that is however not the "intended" purpose of containers, which is more about service providers.

Everytime I install, or get a new computer I have this "docker" directory with all the stuff I need, and I can summon it just by doing docker-compose up. No http server setup, no need to back up databases (they are already there). So those containers were a godsend to me tongue.

As for flatpaks, they are a nice way to install third party stuff on some distros (used them a lot on Fedora), now that I have been introduced to AUR I very much prefer it to flatpaks because it is just more efficient and overall more tidy. Still the use cases are very strange, and there are other ways to do that but might not be as user friendly as flatpaks (I think that is the greatest benefit of flatpaks, ease to use for non technical users).

Last edited by juanfgs (2018-11-02 15:26:17)

Offline

#19 2018-11-02 16:04:26

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 20,475
Website

Re: Do containers make sense in Arch?

juanfgs wrote:

I think that is the greatest benefit of flatpaks, ease to use for non technical users.

Do you mean for the creators or the end-users?  For the creators, perhaps.  I have no experience with creating or distributing flatpaks, but I do admit that creating a statically linked binary can have some hurdles.  For the end-user, however, I completely disagree.  A statically linked binary will 'just work' - it is completely idiot proof for the user, download the binary, put it anywhere, run it anytime; flatpaks, in contrast, require that the user set up a flatpak system, obtain the flatpak, etc.

The one devil's advocate point I'd acknowledge - that no one has mentioned - is that licensing issues may prevent legal static linking.  In that case, a container *might* have a purpose (I'm still skeptical, and personally I'd just find other libs with less viral licenses.)


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Online

#20 2018-11-02 16:24:14

progandy
Member
Registered: 2012-05-17
Posts: 3,195

Re: Do containers make sense in Arch?

Trilby wrote:

The one devil's advocate point I'd acknowledge - that no one has mentioned - is that licensing issues may prevent legal static linking.  In that case, a container *might* have a purpose (I'm still skeptical, and personally I'd just find other libs with less viral licenses.)

One issue I see is linking to the graphics stack. How do you link to the proper gl implementation if it changes depending on the driver?

Last edited by progandy (2018-11-02 16:31:57)


| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |

Offline

#21 2018-11-02 22:10:39

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 20,475
Website

Re: Do containers make sense in Arch?

Off the top of my head, perhaps a different static binary for each driver.  But wouldn't that also be an issue for a flatpak: they'd need a separate bundle for each driver.


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Online

#22 2018-11-03 07:03:30

progandy
Member
Registered: 2012-05-17
Posts: 3,195

Re: Do containers make sense in Arch?

Trilby wrote:

But wouldn't that also be an issue for a flatpak: they'd need a separate bundle for each driver.

flatpak has so-called runtimes (e.g. one with all GNOME libraries, one with nvidia drivers, one with KDE) that can be layered on top of each other. Then the application depends on a runtime instead of having all libraries in its own flatpak.


| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |

Offline

#23 2018-11-03 14:06:14

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 20,475
Website

Re: Do containers make sense in Arch?

Well then aren't you just back at the non-containerized situation for those dependencies: you need to have the right version of each runtime in order for your flatpak app to run which then defeats the whole purpose.

This can be done with partial static linking too - statically link in any functions from dependencies you don't want the user to have to worry about keeping the right version of, and dynamically link to anything that you want to use whatever is on the system (requiring that it then have a suitable version for the distributed binary).

Last edited by Trilby (2018-11-03 14:06:27)


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Online

#24 2018-11-03 16:20:33

progandy
Member
Registered: 2012-05-17
Posts: 3,195

Re: Do containers make sense in Arch?

Trilby wrote:

Well then aren't you just back at the non-containerized situation for those dependencies: you need to have the right version of each runtime

Nearly. You still have only one runtime to target that runs on all flavors of linux instead of supporting each with different library versions and someone else is responsible for fixing bugs in that runtime, you don't have to recompile your flatpak as long as the ABI stays compatible.

Thanks for the tip with partial static linking. I never realized that partial static linking is possible, too. I never liked "app containers", and now the last reason I grudgingly accepted them is gone as well.

Last edited by progandy (2018-11-03 16:24:54)


| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |

Offline

#25 2018-11-03 18:47:30

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 20,475
Website

Re: Do containers make sense in Arch?

progandy wrote:

Thanks for the tip with partial static linking. I never realized that partial static linking is possible

Possible, yes.  I'm not saying it's easy to build.  But for the end-user it's certainly easier to install and run than a flatpak with some specific runtime dependency.


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Online

Board footer

Powered by FluxBB