The Windows CLI brings Microsoft closer to full Docker container support, but many more pieces must still click into place
Will Docker ever run natively on Windows? Eventually, yes -- but despite
Microsoft's steps in that direction, the road ahead remains long.
As part of the recent announcement of close collaboration between Microsoft and Docker, Microsoft contributed code back to the Docker client application to get it running on Windows. The result is a Docker CLI that can run on Windows machines. However, it's only useful for managing Docker on Linux systems -- Windows lacks the underlying components needed to run Docker natively.
Still, it means one fewer obstacle for those doing Docker development in a Windows environment. Those deploying Docker images on Azure VMs, for instance, can now run the Docker CLI side by side with their other Azure tools on their Windows workstations.
Still, it means one fewer obstacle for those doing Docker development in a Windows environment. Those deploying Docker images on Azure VMs, for instance, can now run the Docker CLI side by side with their other Azure tools on their Windows workstations.
Previously, dealing with Docker on Windows involved elaborate
workarounds, such as running the Docker CLI inside a Linux VM using a boot2docker distribution. Technically, that doesn't count as running Docker on Windows at all, but it was as close as you could get.
Previously, Microsoft took another step to ensure that Docker containers could run on Azure by adding support for Kubernetes, the Google-created project for Docker container orchestration, along with tools
to help visualize cluster management. To further prep Windows for
Docker, Microsoft has released a preview Docker image of ASP.Net 5, on
which other ASP.Net-based containers can be built.
The biggest missing piece is container support, which must be added to
Windows itself so that Docker can run natively. This isn't the same as
having Docker running in Azure, where it's used to manage Linux
workloads. It's even more radical: adding features to the Windows kernel
that parallel Linux's cgroups and namespaces, both essential to
Docker's workings.
That said, Microsoft has remained tight-lipped on how it will do this.
It could be via a kernel-level driver or require a full-blown revision
to the kernel for a future edition of Windows, but the company hasn't
posited so much as a time frame for the shift.
One advantage to the latter method -- modifying the Windows kernel -- is
that Microsoft would be under less pressure to release the results as
open source. The company's gradual warming to open source has taken the
form of truly startling overtures, such as releasing server-side .Net as an open source project.
But there's every reason to believe Microsoft will continue to keep
Windows, one of its prize proprietary offerings, on a tight leash for as
long as it can -- even while making it a target for open source success
stories like Docker.
No comments:
Post a Comment