Docker this week introduced two new projects at DockerCon with an eye to helping operating system vendors, software creators and in-house tinkerers create container-native OSes and container-based systems.
The projects are based on a new model for cross-ecosystem collaboration and the advancement of containerized software. Both projects aim to help users adopt container technology for all major technology platforms used in data centers and the cloud, as well as in the Internet of Things.
The Moby Project provides a library of components, plus a framework for assembling them into custom container-based systems. It also provides a community center for container enthusiasts to experiment and exchange ideas.
LinuxKit bundles the tools to build custom Linux subsystems with just the components the runtime platform requires for Linux container functionality. It provides the Linux elements otherwise missing as a component for a container platform on non-Linux systems such as Mac and Windows computers.
The projects have a shared goal of advancing the software containerization movement and helping take containers mainstream. The two projects mark the start of Docker’s next phase of container innovation, said David Messina, senior vice president of marketing at Docker.
The new projects provide a way to create, share, use and build container systems that was not possible with any open source project in the past, he said.
Moby’s open source structure enables Docker to collaborate on architecture, design and experimentation with bleeding-edge features, Messina told LinuxInsider.
Docker developed LinuxKit in collaboration with Silicon partner ARMl, infrastructure providers like HPE, and cloud companies including Microsoft and IBM. Docker released LinuxKit as an open source project to be managed by The Linux Foundation under its open-governance practices.
The Moby Project and LinuxKit make customer use of Docker technology easier and more effective. The new phase of evolution is mainstream deployment, tied to the increasing specialization of use cases across all industries, said Messina.
“Both these projects are about leveraging interchangeable containerized components to create new systems,” he explained.
The driving interest in Docker is getting one uniform packaging format, API and tooling from dev to ops. Its promise is the ability to develop software across any language, said Messina. It also creates applications that are portable across any infrastructure in a much more agile fashion.
The new collaboration initiatives could lead to faster, simpler deployments, said Charles King, principal analyst at Pund-IT.
“Both efforts are similarly aimed at simplifying critical parts of deploying and supporting container environments,” he told LinuxInsider. “Docker’s decision to open source the technology and enlist notable partners — including HPE, Intel, ARM, IBM and Microsoft — in the effort suggest that it is on the right path.”
How Moby Works
Moby allows anything that can be containerized to become a Moby component, which will generate continuing opportunities for collaboration with other projects outside of Docker.
Contributors can leverage well-tested common components to build highly specialized container systems more rapidly. With many deployments in place, contributors can differentiate on features.
The Moby library provides participants with more than 80 components derived from Docker. Participants also can bring their own components packaged as containers with the option to mix and match among all of the components to create a customized container system.
The new development phase grew out of a program Docker began building last year to develop a toolkit to assemble custom Linux subsystems. The intention was to create a more native experience for its desktop (Windows, Mac) and cloud platforms. That became the LinuxKit that provides the community with a solution to create a custom OS.
“Moby gives the same tool that Docker uses internally to build, test and package Docker software to the community, so it will accelerate innovation and help produce specialized architectures for running containers,” noted Giorgio Regni, CTO at Scality.
“It also means we can use the same tools to build private VM images, bare metal images and public cloud images in a unified way,” he told LinuxInsider.
That is all part of what is driving interest in the use of container technology. Developers want choice and freedom, Regni said. Containers help them achieve freedom of coding language, freedom of Linux-based distribution, freedom of runtime — public cloud, local virtual machines, servers or even laptops.
Building From Kit
LinuxKit allows users to create secure Linux subsystems. That security is anchored around the inherent secure container design. The kit makes it easy for users to assemble the Linux subsystem with only needed services. All the components run in containers.
LinuxKit produces a minimalist boot environment to run containers, which provides a security advantage, as it creates a smaller attack surface than general purpose systems.
It also provides a read-only root file-system for an immutable infrastructure approach to deployments enabled by InfraKit.
The LinuxKit has a community-first security process. It will serve as an incubator for security-related innovations.
LinuxKit’s container-native nature gives it a very minimal size of only 35 MB and a minimal boot time. Since all system services are containers, everything can be removed or replaced. This container-native approach means that it is highly portable and can work in many environments: desktop, server, IOT, mainframe, bare metal and virtualized systems.
Easier Adoption Driver
Containerization can offer a simpler, faster and more elegant way than traditional virtualization platforms to deploy and support business workloads. Customers easily can build LinuxKit images optimized for the hardware platforms and operating systems they employ, said Pund-IT’s King. Those are crucial points for technically savvy organizations that depend on distributed applications.
“That said, there is not really an either/or choice between containers and virtualization,” observed King. “Both can be powerful solutions for a range of processes. Both are intelligent extensions of container technology that also support Docker’s business strategy.”
Although it is hard to predict the viability of LinuxKit and the Moby Project at this point, King added, you can not fault Docker’s ambition.