Recently, Docker announced the launch of an extensions API (application programming interface) called Docker Extensions that enables partners to extend Docker Desktop capabilities with additional capabilities for developers. With this announcement, Loft introduces an extension for open source vcluster that makes it easy to create and manage virtual clusters in Docker Desktop.
“This brings together two hugely popular technologies and integrates the functions of vcluster for the users of Docker Desktop who are increasingly working in Kubernetes,” said Lukas Gentele, co-founder and CEO, Loft Labs. “Using their familiar Docker Desktop, users are able to set up as many different virtual Kubernetes clusters as needed for development, testing, as well as production.”
Now, Docker Desktop developers can leverage open source vcluster running in Docker Desktop. With vcluster, users can create virtual clusters which are easy to pause and resume. This is ideal for developers that need to set up different development and testing configurations which is easy to do and can all be run as virtual clusters in Kubernetes – much like virtual machines on a server.
Docker Desktop runs on Linux, MacOS, and Windows machines and is used to build and share containerized applications and microservices.
“Docker is obsessed with developer ergonomics and is committed to filling and improving the developer experience gap,” said Jake Levirne, head of product at Docker. “We welcome Loft Labs to the Docker Extension marketplace, expanding the applications and capabilities available for millions of registered Docker developers.”
First launched in April 2021, vcluster has gained popularity with more than 500,000 downloads and over 1,300 stars on GitHub. It is used to create Kubernetes clusters that run inside the namespaces of underlying Kubernetes clusters. Using virtual clusters solves the majority of multi-tenancy issues of Kubernetes because they offer:
- Better isolation than simple namespace-based multi-tenancy;
- Reduced cloud computing cost because virtual clusters are much more lightweight and resource-efficient than spinning up separate single-tenant clusters;
- Logical separation and encapsulation of application workloads from the underlying cluster’s shared infrastructure workloads (such as shared ingress controller or network plug-ins).
At the same time, virtual cluster users can expect that their virtual cluster behaves just like any regular Kubernetes cluster because vcluster is a certified Kubernetes distribution, which means that it passes all conformance tests that CNCF requires. Virtual clusters are often used as development environments when engineers are building, testing and debugging cloud-native software, but they are also frequently used as ephemeral environments for executing continuous integration/continuous delivery (CI/CD) pipelines.