LinuxQuestions.org
Visit Jeremy's Blog.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Containers
User Name
Password
Linux - Containers This forum is for the discussion of all topics relating to Linux containers. Docker, LXC, LXD, runC, containerd, CoreOS, Kubernetes, Mesos, rkt, and all other Linux container platforms are welcome.

Notices


Reply
  Search this Thread
Old 12-27-2020, 09:00 AM   #1
ychaouche
Member
 
Registered: Mar 2017
Distribution: Mint, Debian, Q4OS, Mageia, KDE Neon
Posts: 369
Blog Entries: 1

Rep: Reputation: 49
Have we gone full circle ?


It just crossed my mind that, at some point in history,
every software had their own library shipped with them,
which made them big. So we thought why don't we all put
common useful code in Dynamic libraries that are
shipped just one time for all the software that's on a
given system, that way, any software that needs, say,
the math sin function can just load the libm.so library
and use it from there, instead of every software having
its own math library inside it. It also makes
maintaining the software easier. But we forgot that
libraries are also software in their own right and they
evolve just as software do : new functions get added,
and the last version of your favorite software needs a
newer version of that library to work. At the same time,
critical parts of your system need the old version !
So we decided to create containers, virtual
environements, and technologies like snaps... aren't we
going back to the original state where every software
had their own libraries and dependencies shipped with
them ? what are your thoughts ?
 
Old 12-27-2020, 09:15 AM   #2
teckk
LQ Guru
 
Registered: Oct 2004
Distribution: Arch
Posts: 5,146
Blog Entries: 6

Rep: Reputation: 1834Reputation: 1834Reputation: 1834Reputation: 1834Reputation: 1834Reputation: 1834Reputation: 1834Reputation: 1834Reputation: 1834Reputation: 1834Reputation: 1834
Microsoft windows can keep that. Having 12 different versions of the same library on a box. I like the linux way, you only need a library once. Keeping everything matching is what a package manager is for. It works well, and the file tree is small.

You can always install something to a directory in $HOME and not mess up the whole file tree.
 
Old 12-27-2020, 09:21 AM   #3
pan64
LQ Addict
 
Registered: Mar 2012
Location: Hungary
Distribution: debian/ubuntu/suse ...
Posts: 21,981

Rep: Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337
that is an interesting question. snap, appimage looks like that, but don't forget now we have VM, containers, multithreading. Sometimes I need to reboot to a different OS to use my [other] software. Sometimes I want to be more secure.
And now we have uncountable number of programs created by different people.
 
Old 12-27-2020, 09:35 AM   #4
hazel
LQ Guru
 
Registered: Mar 2016
Location: Harrow, UK
Distribution: LFS, AntiX, Slackware
Posts: 7,650
Blog Entries: 19

Rep: Reputation: 4480Reputation: 4480Reputation: 4480Reputation: 4480Reputation: 4480Reputation: 4480Reputation: 4480Reputation: 4480Reputation: 4480Reputation: 4480Reputation: 4480
What are containers for anyway? I can understand the use of something like virtualbox, which enables you to run a completely different OS (so you can play games on Windows without having to dual-boot). But why do people want to have bits of Linux partitioned off in this way?
 
Old 12-27-2020, 09:46 AM   #5
pan64
LQ Addict
 
Registered: Mar 2012
Location: Hungary
Distribution: debian/ubuntu/suse ...
Posts: 21,981

Rep: Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337
Quote:
Originally Posted by hazel View Post
What are containers for anyway? I can understand the use of something like virtualbox, which enables you to run a completely different OS (so you can play games on Windows without having to dual-boot). But why do people want to have bits of Linux partitioned off in this way?
https://blog.netapp.com/blogs/containers-vs-vms/
 
Old 12-27-2020, 09:57 AM   #6
hazel
LQ Guru
 
Registered: Mar 2016
Location: Harrow, UK
Distribution: LFS, AntiX, Slackware
Posts: 7,650
Blog Entries: 19

Rep: Reputation: 4480Reputation: 4480Reputation: 4480Reputation: 4480Reputation: 4480Reputation: 4480Reputation: 4480Reputation: 4480Reputation: 4480Reputation: 4480Reputation: 4480
Thanks, Pan. But does that mean that the software in the container has to be the same OS, only with some bits different (for example different library versions)?
 
Old 12-27-2020, 10:03 AM   #7
pan64
LQ Addict
 
Registered: Mar 2012
Location: Hungary
Distribution: debian/ubuntu/suse ...
Posts: 21,981

Rep: Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337
Quote:
Originally Posted by hazel View Post
Thanks, Pan. But does that mean that the software in the container has to be the same OS, only with some bits different (for example different library versions)?
container uses the kernel of the OS, so it cannot be different. container has no full access to the system (hardware), but probably that is not that important. Otherwise you can put a [slightly] different OS into the container.
 
1 members found this post helpful.
Old 12-27-2020, 03:32 PM   #8
ondoho
LQ Addict
 
Registered: Dec 2013
Posts: 19,872
Blog Entries: 12

Rep: Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053
Interesting thoughts.
But thankfully there's still plenty of "real" Linux distributions and software around; I don't see the glorious concept of package management & shared libraries going away anytime soon.
Going full circle would mean that a) containers are the new default - I disagree - and b) we actually know where we started from - do we?
 
Old 12-27-2020, 10:46 PM   #9
jailbait
LQ Guru
 
Registered: Feb 2003
Location: Virginia, USA
Distribution: Debian 12
Posts: 8,342

Rep: Reputation: 551Reputation: 551Reputation: 551Reputation: 551Reputation: 551Reputation: 551
Quote:
Originally Posted by hazel View Post
What are containers for anyway? I can understand the use of something like virtualbox, which enables you to run a completely different OS (so you can play games on Windows without having to dual-boot). But why do people want to have bits of Linux partitioned off in this way?
The original purpose of containers was to provide security amongst several users on the same machine. Red Hat took the chroot jail concept and made the separation between users even stricter. Thus the accountants could not access the engineering specifications and the engineers could not access the payroll files and so on. It also helps in external security because if one user is hacked the intruder cannot then use that user's ID as a base to attack other users on the same system. The original intent was not to have bits of Linux partitioned off. That is a secondary effect of having users more strictly partitioned off from each other.

-------------------------
Steve Stites
 
1 members found this post helpful.
Old 12-28-2020, 01:26 AM   #10
berndbausch
LQ Addict
 
Registered: Nov 2013
Location: Tokyo
Distribution: Mostly Ubuntu and Centos
Posts: 6,316

Rep: Reputation: 2002Reputation: 2002Reputation: 2002Reputation: 2002Reputation: 2002Reputation: 2002Reputation: 2002Reputation: 2002Reputation: 2002Reputation: 2002Reputation: 2002
Quote:
Originally Posted by ychaouche View Post
aren't we
going back to the original state where every software
had their own libraries and dependencies shipped with
them ? what are your thoughts ?
Not quite. In a container or a VM, you run several processes that share libraries.

You encapsulate applications in containers and VMs for security reasons, but also to allow your software to be independent of the platform (the original promise of Java, now fulfilled by Docker). Platform independence requires shipping your own libraries, that's true.

Not full circle, but perhaps half circle?

I can't comment on snaps.
 
Old 12-28-2020, 02:49 AM   #11
ychaouche
Member
 
Registered: Mar 2017
Distribution: Mint, Debian, Q4OS, Mageia, KDE Neon
Posts: 369

Original Poster
Blog Entries: 1

Rep: Reputation: 49
Docker is the new Java
 
Old 12-28-2020, 02:16 PM   #12
coltson
Member
 
Registered: Oct 2010
Posts: 149

Rep: Reputation: 3
Tried a app image yesterday and it required a library like any other program. Compiled it and now it requires another one :P (and now I don't know the correct version to be compiled, at least until someone on its mailing list reply to my question)
 
Old 12-29-2020, 04:17 AM   #13
ychaouche
Member
 
Registered: Mar 2017
Distribution: Mint, Debian, Q4OS, Mageia, KDE Neon
Posts: 369

Original Poster
Blog Entries: 1

Rep: Reputation: 49
Quote:
Originally Posted by coltson View Post
Tried a app image yesterday and it required a library
That's not supposed to happen or I am understanding things terribly wrong
 
Old 12-29-2020, 07:29 AM   #14
ondoho
LQ Addict
 
Registered: Dec 2013
Posts: 19,872
Blog Entries: 12

Rep: Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053
Quote:
Originally Posted by ychaouche View Post
That's not supposed to happen or I am understanding things terribly wrong
On my system there is a
Quote:
libappimage 1.0.3-3
Reference implementation of the AppImage specification
...
 
Old 12-29-2020, 09:08 AM   #15
pan64
LQ Addict
 
Registered: Mar 2012
Location: Hungary
Distribution: debian/ubuntu/suse ...
Posts: 21,981

Rep: Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337Reputation: 7337
Quote:
Originally Posted by coltson View Post
Tried a app image yesterday and it required a library like any other program. Compiled it and now it requires another one :P (and now I don't know the correct version to be compiled, at least until someone on its mailing list reply to my question)
appimage (the app itself) should assume a working OS with a kernel, libc and some other base packages.
There can be incompatibilities. But without details hard to say anything [more]
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
LXer: Full Circle magazine #21 out LXer Syndicated Linux News 0 02-03-2009 03:10 PM
LXer: Full Circle mag reviews Xubuntu on Asus EEE PC LXer Syndicated Linux News 0 03-03-2008 10:50 AM
LXer: Ubuntu Full Circle - Required Ubuntu reading LXer Syndicated Linux News 0 11-30-2007 01:30 PM
LXer: Ubuntu magazine: Full Circle #3 released LXer Syndicated Linux News 0 08-06-2007 02:01 PM
LXer: Full Circle Magazine releases Issue 2 LXer Syndicated Linux News 0 06-30-2007 06:46 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Containers

All times are GMT -5. The time now is 05:36 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration