Install Nginx
.
sudo apt-get update
sudo apt-get install nginx
Install zip.
sudo apt-get install zip
Install GDIPlus
package using the following command.
sudo apt-get install libgdiplus
Add an openssl conf
path in the environment, if does not exist.
export OPENSSL_CONF=/etc/ssl/
Download the Bold Reports Linux package by running the following command.
sudo wget {Bold Reports Linux package link}
Extract the zip file.
sudo unzip {Bold Reports Linux package zip file}
Change the directory to BoldReports_EnterpriseReporting-Linux
by running the following command.
cd BoldReports_EnterpriseReporting-Linux
Execute the following command to deploy Bold Reports in your Linux machine.
sudo bash install-boldreports.sh -i {new} -u {user} -h {host URL} -n {true or false}
IMPORTANT: If you have any existing applications running in that Linux machine using Nginx, set “-n” value to false and configure the Nginx manually. Example for new installation,
sudo bash install-boldreports.sh -i new -u www-data -h http://linux.example.com -n true
Once the installation completed, open the host URL in the browser and continue the application startup.
Note:
- After upgrading Bold Reports application to v3.2.22 from v3.1.x, you need to update below section of code in Nginx configuration file in the location
/etc/nginx/sites-available
.- This breaking changes should be done for both automatic and manual Nginx configurations.
Old Nginx configuration file code:
Replace below code in Nginx configuration file instead of above marked code,
location /reporting/reportservice {
root /var/www/bold-services/application/reporting/reportservice;
proxy_pass http://localhost:6553;
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;
}
Once the Nginx configuration is updated, run the sudo nginx -t
to verify the syntax of the configuration files. If the configuration file test is successful, force the Nginx to pick up the changes by running the sudo nginx -s reload
.
To configure Nginx as a reverse proxy to forward requests to the Bold Reports app, modify /etc/nginx/sites-available/default. Open it 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/bold-services/application/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/bold-services/application/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 /reporting {
root /var/www/bold-services/application/reporting/web/wwwroot;
proxy_pass http://localhost:6550/reporting;
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 /reporting/messageHub {
proxy_pass http://localhost:6550/reporting/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 /reporting/api {
proxy_pass http://localhost:6551/reporting/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 /reporting/jobs {
proxy_pass http://localhost:6552/reporting/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 /reporting/reportservice {
root /var/www/bold-services/application/reporting/reportservice;
proxy_pass http://localhost:6553;
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;
}
}
Once the Nginx configuration is established, run the sudo nginx -t
to verify the syntax of the configuration files. If the configuration file test is successful, force the Nginx to pick up the changes by running the sudo nginx -s
reload.
If you have an SSL certificate for your domain and need to configure the site with your SSL certificate, follow these steps or you can skip this.
example.com
with your domain name.ssl_certificate /etc/ssl/domain.crt
.ssl_certificate_key /etc/ssl/domain.key
.nginx -t
to verify the syntax of the configuration file. If the configuration file test is successful, force the Nginx to pick up the changes by running the sudo nginx -s
reload.NOTE: If you are configuring the application with SSL, you need to update the URLs in the product. json with
HTTPS
located in the/var/www/bold-services/application/app_data/configuration
.
Install Optional Libraries