Windows containers with Docker API support are now available from WinDocks, and Microsoft's support is imminent with the release of Windows Server 2016 later this summer. In the past year, Docker has emerged as a leading technology for DevOps and Cloud (see here), is offered as a service by AWS and Azure, and is supported by Red Hat and many other firms.
Docker was designed for Cloud applications, and particularly for DevOps and microservice architectures. While we believe the benefits of Docker are best realized in modern designs, it's a mistake to overlook how containers can benefit a broader range of uses. The WinDocks Community Edition is a free downloadable Docker daemon for Windows 8, Windows 10, Windows Server 2012, and Windows Server 2016, with .NET and SQL Server container support. A survey of WinDocks users highlights the following Top 5 practical uses of Windows containers:
#1: Standing Up Development and Test Environments
The most popular use of Windows containers today is for delivery of integrated .NET and SQL Server environments for development and testing. Most organizations report that they have struggled to deliver isolated SQL Server instances. SQL Server environments have not been refreshed daily and are often provided for test purposes weekly or even on alternate weeks.
Using containers, most report that SQL Server environments are being refreshed daily, with development and test teams supported with identical and isolated containers on a single VM. In addition to reducing VMs used by a factor of five, maintenance of SQL Server instances is dramatically simplified. A single instance can be updated and containers are refreshed through the updated base image.
#2: Automated Build and Test
Growing interest in DevOps and continuous integration is driving growth in the use of containers integrated with Git, and Jenkins or Team City, to automate the build of containers and automated testing. A single VM supports the build of containers in seconds, with .NET and SQL Server containers built and tested individually, and as integrated applications.
#3: SQL Server Containers for Hosting and License Cost Savings
SQL Server has been known for its multi-instance support, and containers make the use of instances simpler with less operational risk. Many organizations are exploring the use of containers for high availability, and significant license cost savings.
#4: Hybrid Cloud with Secure Enterprise Data
Containers can also support a mix of developer and operations processes. One example is the use of SQL Server containers combined with cloned databases. WinDocks collaborated with NetApp, to provide an extensible design to support the use of third party systems for creation and integration of cloned databases with containers. The result was the creation of ~1 TB database clones mounted to SQL Server containers in under a minute (see: https://youtu.be/2IRNx-6d4Oc). The option of provisioning containers on a public cloud, combined with the secure hosting of enterprise data, is particularly attractive for financial institutions.
#5: Legacy Support with SQL Server Container Back-end
SQL Server plays a prominent role in hosting SAP, Microsoft Dynamics, and other legacy workloads. The ability of containers to be quickly provisioned to meet the various configurations for varied customers, often hosted on a single VM, makes for more economical and agile support for workloads that are increasingly being moved to the cloud.
What Can You Do With Windows Containers?
Windows containers appear to be relevant for a broad range of purposes and are not limited to cloud-native or microservice architectures. If you're interested to explore how containers can be applied in your work check out the options from WinDocks and Microsoft at: