Container-based Virtualization: The Big Picture - Printable Version +- Post4VPS Forum | Free VPS Provider (https://post4vps.com) +-- Forum: VPS Discussion (https://post4vps.com/Forum-VPS-Discussion) +--- Forum: Tutorials (https://post4vps.com/Forum-Tutorials) +--- Thread: Container-based Virtualization: The Big Picture (/Thread-Container-based-Virtualization-The-Big-Picture) |
Container-based Virtualization: The Big Picture - fChk - 07-08-2021 To answer the question asked in this post of mine, ie the 'where Docker containers fit in the big Container-based Virtualization picture, an overview of the whole field is warranted and -as usual with me- this is done in its historical context. So, this thread is about setting the broad historical context of Containers technologies, highlighting the milestones events occurring in the path towards the kick-starting of the LXC project in 2008, which led to the Docker project, open-sourced in 2013, which was foundational in setting the industry standard for 'containerized application' and all the tooling that goes with it. ------------------------------------- Container-based virtualization (ie OS virtualization), as contrasted to the hypervisor-based or VM-based virtualization (ie machine/hardware virtualization), has been a hot subject in the IT world for more than a decade now. The following table (*) gives a direct comparison between VMs and containers: Code: Virtual Machines (VMs) | Containers 1- Containerization technologies Containers are an old concept. Below is a summary list for the milestones and evolution of the concept which culminated in the split between system containers and the more popular application containers championed by Docker Inc. since 2013 and their standardization in the OCI specification in 2015:
Among the Containerization technologies listed above, LXC (for LinuX Containers) is the one that interests us in this thread as it's the original implementation from which all kinds of other Linux containers implementations derive, including Docker containers. It indeed represents an operating-system-level virtualization environment (VE) for running multiple isolated Linux systems (containers) on a single Linux machine. These Linux containers are basically made of three Linux kernel primitives:
Another interesting observation that can be made from the Containerization technologies listed above (ie Solaris Zones, Virtuozzo’s OpenVZ, FreeBSD jails and LXD/LXC containers) is that they are all designed primarily as a way to containerize a complete OS rather than just a single app, which means that they are all system containers. Next post will be about the transition to the 'application containers' with the release of Docker as an open-source project in 2013. 2- From System Containers to Application Containers RE: Container-based Virtualization: The Big Picture - tbelldesignco - 07-08-2021 This was very educational, right now I am working on learning more about Docker, simply because for my ergonomics software, I want to be able to rapid deploy it in a container that I can assign an IP address to and then route a subdomain to it. That way I can keep my thumb on the software and as I add more services (a la iCloud) it will be easier to containerize instances of the services and rapidly deploy them to my customers. |