If your production databases are on Azure SQL, it is a best practice to use Azure SQL production data for development, test, and devops. Manual backups and restoring to other fixed Azure SQL instances for dev and test is a cumbersome process and also expensive because of the costs of Azure SQL. The best practice is to automate the process of getting Azure SQL database BACPAC files on to Azure VMs, restoring the BACPAC to database files, making database clones available to developers, testers and devops pipelines. This best practice simplifies the infrastructure needed and reduces your Azure SQL costs.
Windocks delivers the above best practice in an automated manner without the need for you to write or manage code. Deliver BACPAC files of the Azure SQL databases to storage that is available to an Azure VM. Windocks will use those BACPACs to deliver database clones customized for dev, test and devops. Customizations include masking sensitive data, making different combinations of databases available to different users, implementing authorization controls, applying different database scripts for different users, and more.
|1. Install Windocks||Download the Windocks Community Edition or email firstname.lastname@example.org for a full featured evaluation edition. Provision a Windows Server VM (Server 2016, 2019, or 2022), install SQL Server (for SQL database delivery) and then install Windocks as described here. For Oracle database delivery, also install the Windocks service for Linux as described here|
|2. Create BACPAC||Use Azure portal to create the BACPAC for your Azure SQL database. Use SQL Management Studio or SQL Package for Azure SQL Managed Instances. Move the BACPAC file to storage that can be mounted to the Azure VM running Windocks. Storage can be NFS or SMB mounted to the VM|
|3. Provide the spec to the Windocks orchestrator to build the image||
Specify the path to one or more SQL backup or database files or Azure SQL BACPAC files, which database cloning to use (Windocks database cloning or volume cloning from other companies), where to deliver the database clones (Windocks SQL Server Windows containers or SQL Server instances, how often to refresh from production, customizations such as database scripts to be applied, which masking software to use (Windocks masking, other masking solutions or scripts), and authorization controls. The spec is provided in the form of a dockerfile. Build the image via a web application, command line or REST API.
|4. Deliver customized database clones on demand in containers from the image||The Windocks orchestrator co-ordinates different services to deliver customized database clones in containers as specified. Use a web application, command line or REST API to deliver databases on demand. These databases are available in containers running on the Azure VM which runs Windocks|