Deploy Bold BI as a Sub-Application in a Single Container Docker
This section describes how to deploy Bold BI as a sub-application in a single-container Docker environment.
-
Follow the below document to deploy the Bold BI application on the Docker environment using a single-container docker-compose file.
Single-container deployment for Bold BI application
From the above document need to add persistent volume for Nginx From Step 4.- boldbi_nginx:/etc/nginx/sites-available
Volume section:boldbi_nginx: driver: local driver_opts: type: 'none' o: 'bind' device: '<host_path_nginx_data>'
<host_path_nginx_data> - Specify the path for the Bold BI Nginx configuration file.
Example:'/var/www/boldbi/nginx'
-
Now, run the
docker-compose up -d
from your project directory. -
After successfully deploying the Bold BI container, edit the
boldbi-nginx-config
file present in the Nginx mount persistent volume path (Example: /var/www/boldbi/nginx ) and change the Bold BI configuration as shown in the following:Note: We are going to set the subpath as /dashboard.
Example: http://example.com/dashboard
#server { #listen 80; #server_name example.com; #return 301 https://example.com$request_uri; #} server { listen 80; #server_name example.com; #listen 443 ssl; #ssl on; #ssl_certificate /etc/nginx/sites-available/domain.crt; #ssl_certificate_key /etc/nginx/sites-available/domain.key; proxy_buffer_size 128k; proxy_buffers 4 256k; proxy_busy_buffers_size 256k; large_client_header_buffers 4 16k; proxy_read_timeout 300; proxy_connect_timeout 300; proxy_send_timeout 300; send_timeout 300; client_max_body_size 200M; location /dashboard/ { root /application/idp/web/wwwroot; proxy_pass http://localhost:6500/dashboard/; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection keep-alive; proxy_set_header Host $http_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 /dashboard/api { proxy_pass http://localhost:6501/dashboard/api; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection keep-alive; proxy_set_header Host $http_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 /dashboard/ums { root /application/idp/ums/wwwroot; proxy_pass http://localhost:6502/dashboard/ums; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection keep-alive; proxy_set_header Host $http_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 /dashboard/bi { root /application/bi/web/wwwroot; proxy_pass http://localhost:6504/dashboard/bi; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection keep-alive; proxy_set_header Host $http_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 /dashboard/bi/api { proxy_pass http://localhost:6505/dashboard/bi/api; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection keep-alive; proxy_set_header Host $http_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 /dashboard/bi/jobs { proxy_pass http://localhost:6506/dashboard/bi/jobs; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection keep-alive; proxy_set_header Host $http_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 /dashboard/bi/designer { root /application/bi/designer/wwwroot; proxy_pass http://localhost:6507/dashboard/bi/designer; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection keep-alive; proxy_set_header Host $http_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 /dashboard/etlservice/ { root /application/etl/etlservice/wwwroot; proxy_pass http://localhost:6509/; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header Host $http_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 /dashboard/etlservice/_framework/blazor.server.js { root /application/etl/etlservice/wwwroot; proxy_pass http://localhost:6509/_framework/blazor.server.js; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header Host $http_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 /dashboard/aiservice { proxy_pass http://localhost:6510/dashboard/aiservice; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header Host $http_host; proxy_cache_bypass $http_upgrade; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } }
Bold BI configuration changes
-
Modify the InternalAppUrls with the /dashboard sub path in both the
config.json
andproduct.json
file present in the Bold BI application persistent volume path location </var/www/boldbi/boldbi_data/configuration> as shown in the following screenshot.product.json
config.json
Note: From version 6.19.14, use the config.json and the config.xml for versions prior to this.
-
After editing both files, navigate to the docker-compose file location and run the following commands.
docker-compose down docker-compose up -d
-
After restarting the application, you can access the Bold BI using the
http://domain-name/dashboard
. -
Refer to this link for application startup.