4 ms·
> Containers already existed Fascinating. I'm admittedly very new to container-land, but my understanding was precisely the opposite - that Docker invented thi
by scubbo 4y ago
> Containers already existed
Fascinating. I'm admittedly very new to container-land, but my understanding was precisely the opposite - that Docker invented this concept and practice of building a runtime environment that can then be replicated and deployed to many hosts. Do you have any search terms or articles I should pursue to learn more about the predecessors?
I've read through this[0], but it mostly suggests that approaches prior to Docker provided isolation/jailing, which is an important part of containerization but neglects a lot of tooling around building, deploying, etc.
[0] https://blog.aquasec.com/a-brief-history-of-containers-from-1970s-chroot-to-docker-2016 https://blog.aquasec.com/a-brief-history-of-containers-from-...
EDIT: various other comments ("The Docker UX is what made the difference, not the underlying tech. Building containers in an easy incremental and reproducible way that could then be stored in a repo and pulled over HTTP was the evolution in packaging that was needed.", "I think the feature that won the hearts of devs was the incremental builds that let people fail quickly in a forgiving way", "Containers were painful as hell to set up and use; it was like using Git, but worse. Docker made it convenient, simple, and useful. By now everybody understands that immutable artifacts and simple configuration formats are extremely effective") seem to support this perception.
EDIT2: Thanks to all those that replied!
- dekhn 4y agoContainers absolutely existed before. THere was a long-running project, I think it was LXC but there may have been one before that, which was doing great work fixing all the underlying problems before the technology went exponential.
- turminal 4y ago> I think it was LXC Still is :)
- contingencies 4y agohttps://en.wikipedia.org/wiki/LXC https://en.wikipedia.org/wiki/LXC
- tnorgaard 4y agoI belive that Solaris (OpenSolaris) Zones predates LXC by around 3 years. Even when working with k8s and docker every day, I still find what OpenSolaris had in 2009 superior. Crossbow and zfs tied it all together so neatly. What OpenSolaris could have been in another world. :D
- jskrablin 4y agoOpenVZ is around since 2005, see https://en.m.wikipedia.org/wiki/OpenVZ https://en.m.wikipedia.org/wiki/OpenVZ and it had checkpointing, live migration between hosts, dump container to tar, etc before Docker even existed.
- sillystuff 4y agoAnd linux vserver* has been around since 2001. If you were willing to use out of tree patches, linux containers pre-date Solaris containers by years (Debian distributed pre-patched kernels pretty early on, so you didn't need to deal with compiling your own kernels, and Debian also had an option for vserver + grsec patched kernels). But, freebsd jails beats linux vserver by a year. * not to be confused with the similarly named linux virtual server (LVS) load balancer.
- pjmlp 4y agoHP-UX Vaults were introduced in late 90's, then came Solaris Zones, BSD jails,... This on the UNIX world, mainframes had a couple of decades earlier.
- jamal-kumar 4y agoContainers at their very heart in Linux are three ingredients: cgroups, namespaces, and filesystem-level seperation. Here's an interesting way to learn more about this - Bocker, an implementation of docker in 119 lines of bash: https://github.com/p8952/bocker/blob/master/bocker https://github.com/p8952/bocker/blob/master/bocker