Linux-Based Docker Brings In-Container Development to Windows and Mac

Docker, Inc., the chief commercial supporter of the open source Docker Project, has announced the beta release of Docker for both Windows and Mac this week.

With this release, the Linux-based container technology is optimized for an operating-system-native experience on the two dominant computing platforms, making it possible to install Docker and launch it on those platforms like any other packaged application available in native app stores, the company says.

Previously, running a Docker container on Windows or the Mac OS required the open source Oracle VirtualBox application. With this release, the company has eliminated the need for such third-party software by integrating Docker directly with host-native virtualization, leveraging the Apple Hypervisor framework that first appeared in Mac OS X Yosemite (10.10) and Microsoft's Hyper-V from Windows 10.

"Users for the first time now have a uniform Docker experience across Linux, Mac and Windows platforms," explained Patrick Chanezon, member of the technical staff at Docker, Inc. and chief developer advocate.

These integrated products include Docker Compose and Notary tools and offer a streamlined installation process that no longer requires such non-system software as VirtualBox, Chanezon told ADTmag. The result is significantly faster performance and improvement of developer workflow and file synchronization for editing and testing code.

"There are lots of benefits in this release, but the most important to me is that it brings in-container development to developers," Chanezon said. "Many developers, myself included, are building microservices applications using Docker, but using it mainly to ship and run the applications. Many have been installing a lot of language-specific dependencies on their laptops, developing the apps with fast edit and cycles on their machines, and then only using Docker for some testing, and then building an image that they can ship and run in production on their Linux servers."

"In container" development is supported by a feature designed to allow devs to mount the application code and data directly in a volume that automatically refreshes the application when code changes are made. Code changes can be tested instantaneously on the laptop without the need to restart or rebuild the container every time. A Docker "build" is executed only when the developer wants to ship a Dockerized application from a laptop to a registry.

"All you need on your laptop Git, Docker, and your favorite text editor or IDE, and you can right away get started developing apps using Java or Python or Ruby or Node.js -- even .NET -- and do these fast edit/test cycles directly on your machine. This is very beneficial for this new generation of polyglot developers."

"These integrated software packages are designed to remove an additional layer of 'dependency hell' for Mac and Windows developers by allowing them to develop directly inside a container," said Solomon Hykes, founder, CTO, and Chief Product Officer for Docker, in a statement. And they demonstrate how his company can "leverage native platform capabilities to provide users with the same optimized Docker experience on all platforms," he said.

Docker for Mac and Windows is being introduced via a limited beta program. Those interested in participating can sign up on the company's Web site.

About the Author

John K. Waters is the editor in chief of a number of sites, with a focus on high-end development, AI and future tech. He's been writing about cutting-edge technologies and culture of Silicon Valley for more than two decades, and he's written more than a dozen books. He also co-scripted the documentary film Silicon Valley: A 100 Year Renaissance, which aired on PBS.  He can be reached at [email protected].