Bold BI Installation and Deployment on Ubuntu
Deployment prerequisites
-
You need access to a Linux server with a standard user account that has sudo privileges.
-
Install Nginx by running the following commands:
sudo apt-get update sudo apt-get install nginx -
Install zip by running the command:
sudo apt-get install zip -
Install the
GDIPluspackage using this command:sudo apt-get install libgdiplus -
If the
openssl confpath does not exist, add it to the environment by running:export OPENSSL_CONF=/etc/ssl/
Configuring the Bold BI application
-
Register and download the Bold BI Linux package from this link.
-
Download the Bold BI Linux package by running the following command:
sudo wget {Bold BI Linux package link} -
Extract the zip file by running:
sudo unzip {Bold BI Linux package zip file} -
Change the directory to the
BoldBIEnterpriseEdition-Linuxwith this command:cd BoldBIEnterpriseEdition-Linux -
Deploy Bold BI on your Linux machine by executing the following command:
sudo bash install-boldbi.sh -i {new} -u {user} -h {host URL} -n {true or false}
-
i : Installation type (new or upgrade)
-
u : User or group managing the service (make sure the user exists on your Linux server)
-
h : Domain or IP address with HTTP protocol
-
n : n: Set to “true” to automatically configure Bold BI with Nginx front-end server
IMPORTANT: If you have existing applications running on Nginx, set “-n” to false and configure the Nginx manually.
Example for new installation:
sudo bash install-boldbi.sh -i new -u www-data -h http://linux.example.com -n true
Once the installation is complete, open the host URL in your browser and continue with the application startup.
Manually Configure Nginx
To configure Nginx as a reverse proxy for Bold BI, modify /etc/nginx/sites-available/default. Open the file in a text editor and add the following code.
#server {
#listen 80;
#server_name example.com;
#return 301 https://example.com$request_uri;
#}
server {
listen 80 default_server;
#server_name example.com;
#listen 443 ssl;
#ssl on;
#ssl_certificate /path/to/certificate/file/domain.crt;
#ssl_certificate_key /path/to/key/file/domain.key;
proxy_read_timeout 300;
proxy_connect_timeout 300;
proxy_send_timeout 300;
send_timeout 300;
client_max_body_size 200M;
location / {
root /var/www/boldbi-embedded/boldbi/idp/web/wwwroot;
proxy_pass http://localhost:6500/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection keep-alive;
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
fastcgi_buffers 16 16k;
fastcgi_buffer_size 32k;
}
location /api {
proxy_pass http://localhost:6501/api;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection keep-alive;
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
location /ums {
root /var/www/boldbi-embedded/boldbi/idp/ums/wwwroot;
proxy_pass http://localhost:6502/ums;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection keep-alive;
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
location /ums/signalr/progresshub {
proxy_pass http://localhost:6502/ums/signalr/progresshub;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
location /bi {
root /var/www/boldbi-embedded/boldbi/bi/web/wwwroot;
proxy_pass http://localhost:6504/bi;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection keep-alive;
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
location /bi/messageHub {
proxy_pass http://localhost:6504/bi/messageHub;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
location /bi/api {
proxy_pass http://localhost:6505/bi/api;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection keep-alive;
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
location /bi/jobs {
proxy_pass http://localhost:6506/bi/jobs;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection keep-alive;
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
location /bi/designer {
root /var/www/boldbi-embedded/boldbi/bi/designer/wwwroot;
proxy_pass http://localhost:6507;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection keep-alive;
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
location /bi/designer/helper {
proxy_pass http://localhost:6507/bi/designer/helper;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}After configuring Nginx, run sudo nginx -t to verify the syntax of the configuration files. If the test is successful, force Nginx to pick up the changes by running sudo nginx -s reload.
Configure SSL
If you have an SSL certificate for your domain and want to configure the site with it, follow these steps (or skip if not applicable):
-
Uncomment the marked lines in the Nginx config file.

-
Comment the marked line in the Nginx config file.

-
Replace
example.comwith your domain name. -
Define the path of the SSL certificate:
ssl_certificate /etc/ssl/domain.crt. -
Specify the directory where the SSL certificate key is located:
ssl_certificate_key /etc/ssl/domain.key. -
Save the changes and run
sudo nginx -tto verify the syntax of the configuration file. If the test is successful, force Nginx to pick up the changes by runningsudo nginx -s reload.
NOTE: If you are configuring the application with SSL, update the URLs in product.json with
HTTPSlocated in/var/www/boldbi-embedded/boldbi/app_data/configuration.