I feel like this article misses the bigger point that OCI containers are essentially a description of a process tree and misc. dependencies realized from a template "image". All the implementation details don't matter in the slightest. At this point there are more container runtimes that use virtualization than don't.
The crowd that is like "containers are just a Linux process using namespacing features" are only half right because that's just one (albeit the most popular) way of turning the description of the process into an actual running process.
Ethan J. Jackson here, Founder/CEO of Kelda, and author of the post.
Thanks for the comment! You are, of course, right, once the initial OCR standard was developed, it acts as sort of a thin-waist under which tons of innovation in container runtimes are possible.
The main goal of the post was to provide a high-level overview for folks new to containers that need a beginning working model on what this stuff is all about. So I elected to omit this (and other) details in the hopes of being a bit easier to grok. But I think you’re right, I could definitely have clarified the point a bit more.
The crowd that is like "containers are just a Linux process using namespacing features" are only half right because that's just one (albeit the most popular) way of turning the description of the process into an actual running process.
The spec is actually super readable: https://github.com/opencontainers/runtime-spec/blob/master/s...