Articles in this section
Category / Section

Bold Reports Deployment Using Reverse Proxy Setup

Published:
Updated:

This article provides a universal guide to deploying Bold Reports in various environments (Windows, Linux, Docker, or Kubernetes) and exposing it securely and publicly via an Nginx reverse proxy hosted on a Linux VM.

Prerequisites

  1. VM or Kubernetes cluster for installing Bold Reports (Windows, Linux, Docker, or Kubernetes).
  2. Linux VM for setting up the reverse proxy using Nginx.
  3. Internal network access from the Nginx VM to the Bold Reports hosted resource.
  4. (Optional) A domain and valid SSL certificate for secure access.

Setup and Deployment

Step 1: Install Bold Reports on Host Machine

Follow the appropriate guide:

  1. Windows: Install Bold Reports on Windows
  2. Linux: Install Bold Reports on Linux
  3. Docker: Install Bold Reports on Docker
  4. Kubernetes: Install Bold Reports on Kubernetes

For example, the Bold Reports application is configured with the following domain:

http://ip-address  or  https://host-url

proxy-settings.png

💡 Kubernetes Note
If Bold Reports is deployed on Kubernetes, run the command below to register your reverse proxy DNS with the Nginx Ingress:

kubectl annotate ingress boldreports-ingress -n <your-namespace> nginx.ingress.kubernetes.io/server-alias="<your-reverse-proxy-domain>" --overwrite

Step 2: Install Nginx on Linux VM

  • Update the package list and install Nginx on the second machine:
    sudo apt update
    sudo apt install nginx
    

Step 3: Configure Nginx Reverse Proxy

  1. Navigate to the Nginx configuration directory:

    cd /etc/nginx/sites-available
    
  2. Remove any default Nginx configuration files that may be present from the above location.

  3. Create a new configuration file (e.g., boldreports-nginx) for the Bold Reports application with the following settings. Ensure to replace the placeholder with the actual public address of the Bold Reports application:

     server {
         listen 80 default_server;
      
         #listen 443 ssl;
         #server_name example.com;
      
         #ssl_certificate /path/to/certificate/file/domain.crt;
         #ssl_certificate_key /path/to/key/file/domain.key;
      
         location / {
             proxy_pass http://ip-address;    # Replace with your machine/public address used for the Bold Reports application
             #proxy_set_header Host example.com; 
             proxy_set_header X-Forwarded-Host $host;
             proxy_set_header X-Forwarded-Proto $scheme;
             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
             proxy_set_header X-Real-IP $remote_addr;
         }
     }
    
    
  4. If you have an SSL certificate for your domain and need to configure the site with it, follow these steps:

  • Navigate to the directory /etc/nginx/sites-available/ and open the file boldreports-nginx in a text editor.

  • Uncomment the marked lines in the Nginx config file.

    uncomment-nginx-file.png

  • Comment the marked line in the Nginx config file.

    comment-marked-line.png

  • Replace example.com with your reverse proxy URL.

  • Define the path of the SSL certificate: ssl_certificate /etc/ssl/domain.key;.

  • Specify the directory where the SSL certificate key is located: ssl_certificate_key /etc/ssl/domain.key;.

  • Refer the below image for the SSL configuration changes:

    ssl-configuration-changes.png

Step 4: Create Symbolic Link

  • Create a symbolic link for the new configuration file in the sites-enabled directory. For example, if the file name is boldreports-nginx, use the following command:

    sudo ln -s /etc/nginx/sites-available/boldreports-nginx /etc/nginx/sites-enabled/boldreports-nginx
    

Step 5: Test Configuration and Restart Nginx

  1. Check the Nginx configuration syntax:

    sudo nginx -t
    
  2. If the syntax is correct, reload the Nginx server:

    sudo nginx -s reload
    

After completing these steps, the Bold Reports application will also be accessible via the reverse proxy URL.

Step 6: Update Reverse Proxy URL on the Bold Reports Admin Page

  1. After entering the reverse proxy, it will prompt to proceed with the login. Once logged in, navigate to the administration page.
    Example:

    https://<your-reverse-proxy-domain>/ums/administration/proxy-settings
    
  2. Update the reverse proxy URL and save the changes using the save option.

    update-reverse-proxy-site.png

Step 7: Restart the Bold Reports Application Service

After updating the reverse proxy URL, restart the Bold Reports application by following the instructions provided in this documentation: How to restart the Bold Reports® application.

Was this article useful?
Like
Dislike
Help us improve this page
Please provide feedback or comments
Comments (0)
Please  to leave a comment
Access denied
Access denied