This blog provides show notes for our March 17, 2022, webinar, “How to Deploy Bold Reports in Docker and Azure App Service”. The webinar was presented by Syncfusion Software Developer Ranganathan Arumugam. A recording of the webinar is embedded below.
Introduction to Enterprise Reporting
Bold Reports Enterprise Reporting is a business intelligence report management tool, built by Syncfusion for creating, managing, and distributing pixel-perfect paginated RDL reports behind your organization’s firewall.
It helps us to analyse, explain, and report business information in our day-to-day life. Business users need a reporting tool to track and improve their business.
In this webinar blog, we’ll walk you through the below process.
- Deploy on Docker
- Deploy on Azure App Service
Deploy on Docker
Let’s see an overview and deployment of Docker Compose.
Docker Compose: An Overview
- Docker Compose is a tool for defining and running multi-container Docker applications. Then, with a single command, you create and start all the services from your configuration.
- Docker Compose is great for development, testing, and staging environments, as well as continuous integration workflows.
Features can be performed by docker compose as mentioned below.
- Single host deployments: Containers are designed to run on a single host as they have traditionally been focused on development and testing workflows.
- Preserve volume data: As Compose preserves all volumes used by your services, the previous data will be backed up. Therefore, there is no risk of data loss.
- Recreate the Containers: To recreate the changed containers, you can also use compose.
Prerequisites and Basic command
Let’s look at the requirements for deploying the application in Docker.
- RAM: 16 GB
- Docker Desktop
- Database: Microsoft SQL Server 2012+ | PostgreSQL | MySQL
- Web Browser: Microsoft Edge, Mozilla Firefox, or Chrome
Command
- docker-compose up: This command executes the docker-compose.yaml file. With this command, the application will start.
- docker-compose down: This command removes the containers and default network but preserves the volumes of Bold Reports and PostgreSQL.
Installation on Docker Desktop
- Bold Reports now comes with multiple images for each of the services in it to run on docker-compose, which is mainly for the purpose of a production environment to scale services within Bold Reports.
- Now, we have prepared the environment with all the necessary requirements for deployment. To get started with the installation, download the latest Bold Reports Enterprise reporting Docker Compose files from the following link.
- For deployment, continue with the steps to deploy the bold reports application on Docker Desktop.
SSL Configuration
- SSL stands for Secure Sockets Layer. It’s the standard technology for keeping an internet connection secure and safeguarding any sensitive data that is being sent between two systems.
- By default, the application will be hosted in non-SSL mode. If you want to configure SSL, uncomment those lines for configuring the domain and SSL in default config file and docker compose file.
- We can replace the comwith our domain name.
Uncomment the following marked lines in the Default.config file:
Uncomment the following marked lines in the Docker Compose file:
Client Libraries Installation
To include third-party data sources, we have provided an option to choose the necessary client libraries from the following list:
- PostgreSQL
- MySQL
- Oracle
- PhantomJS
- Go to the optional library location in your pod and install the PhantomJs.
/application/app_data/optional-libs/ - Bold reports support to connect third-party data sources also. We use client libraries such as Oracle, PostgreSQL, and MySQL to connect with their respective SQL database variants. To install client libraries, we need to read and accept the client library license. To install client libraries, continue with the steps.
- PhantomJS is a headless WebKit scriptable with JavaScript. To export the data visualization report items during the report schedule, this executable file is necessary. To install PhantomJS, continue with the steps.
Deploy on Azure App Service
Let’s see an overview and deployment of the Azure App Service.
Azure App Service: An Overview
- Azure App Service is a Platform as a Service (PaaS) offering from Microsoft. It is used to host web applications, REST APIs, and backend services for mobile applications.
- How azure app service different from on-premises hosting? If you are hosting the application on your own on-premises server, you need to setup the network, configure the software, OS, and web servers.
- However, in the Azure App Service, you don’t have to worry about any of the things like, managing the network or underlying infrastructure. Azure takes care of all these things. As a result, you will have more time to concentrate on your business.
Features can be performed by Azure App Service as mentioned below.
- Easiest Way to Deploy Apps: Azure handles deploying your application to multiple servers and high availability, as a result, deployments will be fast.
- Auto Scaling: Based on your plan, you can define the auto scale rule and increase the server size.
- Low Cost: We all know that Microsoft Azure offers pay-as-you-go pricing for their products.
Prerequisites
Let’s look at the requirements for deploying the application on the Azure App Service.
- Microsoft Azure subscription
- Database: Microsoft SQL Server 2012+ | PostgreSQL | MySQL
- Web Browser: Microsoft Edge, Mozilla Firefox, or Chrome
App Service Plan
For the Azure App Service, we recommend going with the B3 plan.
- B3 Plan: 4 Cores(s), 7 GB RAM, 10 GB Storage, $0.300
Installation on Azure App Service
- Now, we have prepared the environment, with all the necessary requirements for deployment. To get started with the installation, download the latest Bold Reports Enterprise reporting ARM template from the link.
- It can be downloaded from our official bold reports GitHub branch.
- For deployment, continue with the steps to deploy the bold reports Azure App Service using the ARM template.
Client Libraries Installation
To include third party data sources, you can choose from the following client libraries.
- PostgreSQL
- MySQL
- Oracle
- PhantomJS
Go to the client library location to execute the client libraries files.
{drive}\home\site\wwwroot\ClientLibraries
Conclusion
I hope this blog provided a clear idea about how to Deploy Bold Reports in Docker and Azure App Service. I hope you enjoyed this webinar and that you’ll keep an eye out for future Bold Reports webinars.
Look at our demo samples and documentation site to learn more. If you have any questions, please post them in the comments section. You can also contact us through our contact page or, if you already have an account, you can log in to ask your support question.
Bold Reports offers a 15-day free trial that does not require a credit card. We invite you to sign up and experience Bold Reports for yourself. Give it a try and let us know what you think!How to Deploy Bold Reports in Docker and Azure App Service