Native Hyper-V Containers in Windows 10 Will 'Ease Developer Pain'
Microsoft said it will add tooling to Hyper-V containers in Windows 10 that will allow developers to bypass complex VM machinations to support development activities. Coming PowerShell module for Docker is also aimed at devs.
Microsoft announced at the beginning of April that it would be building Hyper-V containers natively into Windows 10. That capabilitiy would be part of number other tool offerings coming in the updated OS, which includes the addition of a Linux Bash shell addition to Windows 10 as well as a PowerShell module for Docker.
Hyper-V containers need to be built into Windows 10 because of the current limitations that developers face. According to a description put forth by Microsoft, the common scenario now is that developers have to run virtual machines to support their development activities. However, if they add containers to that environment, then they sometimes get "problematic cross-machine" issues as a consequence. Containers are technologies that enable light operating system virtualization, or abstraction from hardware, to support applications running on the same host, so they're a good tool for developers.
The addition of native Hyper-V containers in Windows 10 "will be ending this pain for Windows developers," said Microsoft's announcement.
Although the Hyper-V containers capability will be coming to the Windows 10 client OS, it will enable server OS support capabilities for developers, per Microsoft's announcement. Here's how Microsoft described that nuance:
Since Hyper-V Containers utilize their own instance of the Windows kernel, your container is truly a server container all the way down the kernel. Plus, with the flexibility of Windows container runtimes containers built on Windows 10 can be run on Windows Server 2016 as either Windows Server Containers or Hyper-V Containers.
In related news, Microsoft will be deprecating its current PowerShell container module that's seen in its Windows Server 2016 preview builds for a new "PowerShell module for Docker." Microsoft said it will be released as open source code.
Microsoft said that the reason for this switch is that developers currently cannot "see" Docker containers when using PowerShell. The new module will give developers a choice of using "the Docker CLI, PowerShell or both."
Microsoft's announcement didn't explain this point in great detail, but there have been differences between container handling between PowerShell and Docker, as explained in this Microsoft FAQ. Microsoft tried to address that issue by making the two management interfaces only see the containers that they created.
"Our short term decision was that management interfaces (in this case Docker and PowerShell) only see containers they created -- you create a container with Docker and PowerShell doesn't see it, you create it with PowerShell and Docker doesn't see it," the FAQ explained.
And that approach apparently wasn't optimal for developers.
As with Hyper-V containers for Windows 10, it's not clear when the new PowerShell module for Docker will roll out. It perhaps will be timed with a future Windows Server 2016 preview release.
Kurt Mackie is senior news producer for the 1105 Enterprise Computing Group.