Windocks or Docker SQL Server containers and Docker Windows with cloned databases using the Community Edition
Windocks Community Edition is a freely downloadable version of Windocks that supports a maximum of 2 containers simultaneously. You can create upto 2 SQL Server (or .Net) environments on one machine in seconds using docker commands or the web application UI.
For example, a team of 2 testers can spin up 2 isolated SQL Server containers with a 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.
You may use any docker client available from Docker Inc to work with the Windocks server. Or you may use the docker.exe provided by Windocks. If you prefer UI, then you may use the Windocks web application UI that is also installed automatically. The install will automatically start the Windocks server and you may open any browser and put in the IP address of the server in the UI to start using the UI. Make sure you open the firewall ports 80 and 2375. See
Using the web application UI
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 try it yourself, download the the free Windocks Community Edition and try the samples using the instructions in
Samples for database cloning
If you prefer to see it in action, see
this video of SQL Server containers with database cloning 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 also automatically deploys the clones into Microsoft Docker SQL Server containers with Docker Windows. In addition, Windocks also automatically deploys the clones into SQL Server instances on your machine or on the network.
The Free edition limits you to one database per container and also to database files that are less than 500MB. If you need more than this, then you may
Windocks supports the creation of SQL Server 2016, SQL Server 2014, SQL Server 2012, SQL Server 2008 R2, SQL Server 2008 containers.
Engineering and dev ops teams working with SQL Server and .Net can get started with Continuous Integration and Continuous Delivery today with Windocks Community Edition.