Container engines, often referred to as operating-system-level virtualization, are operating systems in which the kernel allows the existence of multiple isolated instances. Each instance is referred to as a container, virtualization engine, or jail. Developers use these to create secure, virtual hosting environments with isolated resources. Developers can also separate applications, programs, or segments of code for increased security. These tools reduce overhead for companies and simplify migration processes. Containers can also be used to store applications in a securely hosted environment to increase space, efficiency, and organization. Software solutions such as container management software, container orchestration software, container networking software, container monitoring software, and service discovery software combine to create a microservice ecosystem.
To qualify for inclusion in the Container Engines category, a product must:
Virtualize operating systems in a resource-isolated environment
Add a level of abstraction to contained applications
Allow administrators experience a virtual dedicated server
Allow administrators to determine policies and interpolation