Running Bizagi with Docker for Test Environments
Docker is no longer supported for this Bizagi Version
This section explains how to use Bizagi on Docker for testing purposes. The use of Docker is not intended as a Production environment.
Docker allows you to test drive Bizagi and distribute it easily when needed, by running the Bizagi application on a container. A container is a unit of software that packages all the libraries and elements of an application to runs it quicker, easier and in a reliable way, regardless of the infrastructure you have in place. The usage of a container ensures that the application works uniformly despite of your server.
When you run Bizagi using Docker, you only need to package the Web Application. After it has been packaged, you can distribute it to other users, who will have the exact same installation.
The following diagram shows this architecture.
•To execute Bizagi in Docker, you need to have installed both Bizagi Studio and Docker. When installing Docker, make sure you check the Use windows containers instead of Linux containers check-box.
•Having access to Internet.
•11 GB free hard disk space for a complete installation and configuration.
•Docker must be up and running.
•A Bizagi project created. For more information about how to create a Bizagi project, refer to creating a new project.
•Do not use localhost to refer to your machine. Instead, use its host name.
•Bizagi Scheduler and the Connector services are not included in the package, packaging Bizagi with Docker does not support tasks related to the scheduler nor Connectors.
A Docker container keeps the files while the container is running. Thus, the traces and uploads file are available while the container is running.
The following journeys are available when using Docker.
Installation and configuration of a Bizagi BPM project in Docker
Follow the next steps to install and configure a Bizagi Project using Docker.
1. Copy the WebApplication folder located in your project's folder. The project's folder is normally located at path %SystemDrive%\Bizagi\Projects\[Your_Project].
2. Create a new folder called docker anywhere in your disk and paste the folder copied in the previous step.
3. Download the Docker file from this link and save it in the same location where you pasted the WebApplication folder.
4. Open a new command prompt window with administrator privileges and run the following command:
docker image build docker
The first time you run this command, it may take many minutes/hours according to your Internet Connection.
5. Run the following command to list the images:
6. The first time you create an image, it does not have a tag defined. Add a tag to your image running the following command:
docker image tag [IMAGE ID] [TAG]
•[IMAGE ID]: Id of your image, this ID is displayed in the third column after running the command explained in step 5.
•[TAG]: The name you want to use a tag name. The tag must be lowercase.
Running Bizagi image in Docker
Use the following command to run your Bizagi image in Docker.
docker run -d -p [PORT]:80 [TAG]
•[PORT]: An available port number in your host.
•[TAG]: The tag of your image.
You may need to allow Docker to access your firewall. Do not block it, otherwise, the procedure does not work.
Then, open a browser and enter the following URL: http://[HOST_NAME]:[PORT].
The port is the one you defined in the execution of the command to start the image.
Applying fixes to your Bizagi image in Docker
When you need to apply fixes due to bug fixing or improvements, you need to recreate the image with the new changes performed in Bizagi Studio. It is strongly suggested to save a backup of the WebApplication folder in case you need to roll back.
Perform the following steps.
1. Replace the new content of the WebApplication folder (%SystemDrive%\Bizagi\Projects\[Your_Project]) in the docker folder previously created.
2. Recreate the image following the procedure to install and configure the image from step four.
When you set the tag name for the fix, make sure that the name used has not been assigned to another image in Docker.