Windocks SQL Server Containers with database cloning

on Windows 8, 8.1, 10, Server 2012, R2, and 2016 for all SQL Server editions


The Product - SQL Server containers and database cloning

Windocks delivers multiple SQL Server environments on one machine in seconds using the Windocks server on Windows and either Docker clients or the Windocks web application UI.

For example, a team of 10 testers can spin up 10 isolated SQL Server containers with a fresh database in each container - all on one machine in a few seconds! Each tester can run their own tests on their individual databases. After a tester finishes testing once and has altered the database, he or she may want a fresh copy of the database again. Using Windocks, the tester can spin up another SQL Server container with a fresh database in seconds.

Windocks offers several ways to get databases along with a container.

  • Small databases You may add small databases into a container. Each time you create a container, the databases you need are physically copied into the container. THis is suitable for databases upto a few GB in size. See Tutorial 2 of Getting started with SQL Server databases for the steps.
  • Single container with large databases You may mount an external databases to a single container. This approach is suitable if you have your own practical way of repeatedly creating the MDF, LDF, NDF files for the databases. You will need to create a the database files each time for each container since a set of MDF, LDF and NDF files can only be mounted to a single SQL Server container. See Tutorial 4 of Getting started with SQL Server databases for the steps.
  • Multiple containers with fast cloning of large databases If you need multiple writeable copies of the same large databases in multiple containers, then you may set up cloning of databases as explained in detail in the Guide to SQL Server containers with database cloning . If you want to see it in action, see this video of SQL Server containers with database cloning or contact us for a demo Windocks is the first product that integrates SQL Server database cloning with containers and images. The management of clones, creating and removing mount points is all done by Windocks - you do not have to write any scripts to manage mount points or clones. Cloning involves just two simple steps. First you set up an image using the docker build command or the web application UI. You may provide a full backup, differential backup or a snapshot of the MDF, LDF and NDF files. Second, after the image is created, you may use docker create or docker run or the web application UI to create containers that each have a writeable clone of the database. Container creation from the image is very fast and space occupied on disk is minimal compared to the size of the DB. Most users prefer to build the image using a docker client or the client provided by Windocks. Once the image is built, your dev teams can use the web application UI to get their own SQL Server environment with a their own fast clone of the large database, using just one click.

Windocks supports the creation of SQL Server 2016, SQL Server 2014, SQL Server 2012, SQL Server 2008 R2, SQL Server 2008 containers.

Windocks creates full development environments with code and data in seconds. During the integration phase, code check-ins can be easily run through integration testing easily since multiple environments are easily created. Once builds are accepted, they can easily be stored into Windocks images ready for the next phase. During staging and production phases, Windocks images help to create containers on demand for operations testing and for elastic scaling.

See our documentation for SQL Server containers. Starting with SQL Server containers or Contact us for a demo.

Agile Business Infrastructure

Mobile software development

The Service - Managed Service for Continuous Integration

Windocks is uniquely qualified to modernize .NET and SQL Server development processes. Windocks has led the industry with the first port of Docker’s open source to Windows, and is the only solution that supports all editions of SQL Server 2008 onward with existing systems and licenses.

Windocks services are designed to match up to your business needs, with steps for efficient process change, flexible to adapt to your particular needs:

  • The first step for most is delivery of production SQL Server environments using containers and SQL Server database clones. This step is commonly implemented in the first week, using your existing infrastructure, on-premise, public, or private cloud. Developers and Testers self-service terabyte class production data environments in seconds, using the Windocks web UI, Docker CLI, or Powershell.
  • Add support for multi-tier application environments including .NET, Java, or other open source technology stacks.
  • The third step is Continuous Integration with Jenkins or other CI servers. Windocks has the support you need with the only Jenkins based CI solution for .NET and SQL Server containers.

You can’t manage what isn’t measured, so Windocks includes a Continuous Integration dashboard that reports on environments created, used, and other key metrics.

Windocks’ services are designed to equip your organization with the tools and knowledge to be self-sufficient. Windocks measures progress by the number of customers enabled, not on expanding long-term service relationships. Services are by design modest in scale, and in duration. Windocks managed services includes mentoring of your personnel, and can include on-site training and knowledge transfer as well.

Implement in days. In most cases initial steps can be implemented within a week of an agreeable plan.

Windocks Managed Services are tailored to meet your particular needs, but are designed to enable your organization to develop the skills and infrastructure for agile .NET and SQL Server development. Services start at $2,000 per month, with a minimum 6 month term.

Interested? Each journey starts with a single step. Start yours by speaking with us to discuss your particular needs, and exploring if Windocks can help you achieve your .NET and SQL Server development goals. Contact us for more information.

.Net containers

Windocks containers with Git and a Jenkins plugin, is ideal for automated build and testing for Continuous Integration. Containers are built in seconds, and Windocks full stack support allows for quick creation and testing of integrated .Net + SQL Server environments. Test builds that pass are easily saved as images, and those environments can be easily recreated in seconds.

For example, you can make a continuous integration process with Jenkins faster and cheaper with Windocks containers.

  • Use Jenkins to orchestrate the creation of a .Net containers on each code change in the repo. This is done by invoking the docker client from Jenkins, which communicates with the Windocks server to create the container
  • Setup the automation to clone the latest git repository into the .Net containers
  • Use Jenkins to orchestrate the creation of SQL Server containers with the databases added to each container
  • Once the setup is done, each time the repo is changed, Jenkins is used to start multiple .Net containers with the latest code and multiple SQL Server containers (each with a copy of the test database) on one machine.

Because containers are created in seconds and multiple containers serve multiple developers and testers on one machine, your CI process becomes faster and cheaper with reduced VM and licensing costs.

Contact us for a demo or View documentation for CI with Git and .Net

Mobile software development
While Windocks is the first ever port of Docker's container project to Windows, Microsoft followed with its own port to Windows Server 2016. You can compare Windocks containers with Microsoft containers here

Example: SQL Server Container Workflow

Mobile software development

Start with taking a snapshot


Start with taking a snapshot of production data, prepping the data for development (obfuscating customer data, etc.), and then enabling clones of the data.

Mobile software development

Using a SQL Server image


Using a SQL Server image, containers are instantiated, and databases are mounted. Scripts can be used and each container can be provisioned in seconds (see the video on this page).

Mobile software development

Containers with mounted databases


Containers with mounted databases are provisioned for each member of the team, and the process support destructive testing with easy replacement of each container. Once data or schema is updated, the database can be saved via a snapshot, and new containers generated for the next step in app development life cycle.