Kubernetes is an open source platform for container orchestration. Also started in 2013 and named after a Greek term for “pilot,” Kubernetes is used to automate various software processes such as management, deployment and scaling.
In a Kubernetes service, one or more computers (which can either be virtual machines or bare metal servers) are linked in a Kubernetes cluster, where container workloads of varying sizes and types can be run. Kubernetes is often deployed with Helm charts, which are file collections that work to describe a Kubernetes cluster’s various resources and then package those combined resources as an app.
Kubernetes enables the use of containerized ML apps and simple scaling, and it supports ML frameworks and tools. Kubernetes can also be used as a platform for AI training workloads.
Docker and Kubernetes are similar in many respects. However, they differ in the scale each possesses because Docker is, at its core, a container runtime, while Kubernetes is a full platform designed to accommodate the running and administering of containers from multiple container runtimes. As an indicator of the difference between the two, consider that Kubernetes is large enough that Docker is just one of the multiple container runtimes that Kubernetes supports.