Search results

Auto deploy Bold BI on Linux

This section provides instructions for deploying Bold BI in Linux without manually activating licensing and configuring startup from the browser. It also allows for customizing the branding using environment variables.

Deployment prerequisites

Steps Ubuntu Centos
1. Install Nginx

sudo apt-get update

sudo apt-get install nginx
Install Nginx
2. Install zip.

sudo apt-get install zip
Install zip.

sudo yum install zip
3. Install GDIPlus package using the following command.

sudo apt-get install libgdiplus
Install GDIPlus package using the following command.

sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
sudo yum install epel-release
sudo yum install libgdiplus
4. Install pv tool by running below command.

sudo apt-get install pv
Install pv tool by running below command.

sudo yum install pv
5. Install the Python3 for ETL service by running the following command:

Ubuntu Version:22.04 : sudo apt-get install -y python3

Ubuntu Version:20.04 : sudo apt update && sudo apt install wget software-properties-common && sudo add-apt-repository ppa:deadsnakes/ppa && sudo apt update && sudo apt install python3.9
Install the Python3 for ETL service by running the following command:

sudo dnf groupinstall 'development tools' && sudo dnf install wget openssl-devel bzip2-devel libffi-devel && sudo curl https://www.python.org/ftp/python/3.9.2/Python-3.9.2.tgz -O && sudo tar -xvf Python-3.9.2.tgz && cd Python-3.9.2 && sudo ./configure --enable-optimizations && sudo make install
6. Install python pip by running the below command:

sudo apt-get install python3-pip
Install python pip by running the below command:

sudo yum -y install python3-pip
7. Install pip dependency package for ETL service by running the following command:

sudo pip install duckdb===0.9.2 dlt===0.4.2 pymysql pyodbc pg8000 poetry pandas===2.0.0 "dlt[parquet]" "dlt[filesystem]"
Install pip dependency package for ETL service by running the following command:

python3.9 -m pip install duckdb===0.9.2 dlt===0.4.2 pymysql pyodbc pg8000 poetry pandas===2.0.0 "dlt[parquet]" "dlt[filesystem]"
8. Add an openssl conf path in the environment, if does not exist.

export OPENSSL_CONF=/etc/ssl/
Add an openssl conf path in the environment, if does not exist.

export OPENSSL_CONF=/etc/ssl/

Configuring the Bold BI application

  1. Please register and download the Bold BI Linux package.

  2. Download the Bold BI Linux package by running the command:

    sudo wget {Bold BI Linux package link}
  3. Extract the zip file by running the command:

    sudo unzip {Bold BI Linux package zip file}
  4. Change the directory to the BoldBIEnterpriseEdition-Linux by running the command:

    cd BoldBIEnterpriseEdition-Linux
  5. Execute the following command to deploy Bold BI in your Linux machine:

    sudo bash install-boldbi.sh -i {new} -u {user} -h {host URL} -n {true} -license {License Key} -databasetype {databasetype} -databasehost {Database server name} -databaseport {database port} -maintaindb {default database} -databaseuser {database username} -databasepwd {database password} -databasename {database name} -email {email address} -emailpwd {Password} -mainlogo {main logo} -loginlogo {login logo} -emaillogo {email logo} -favicon {header logo} -footerlogo {footer logo} -sitename {site name} -siteidentifier {site identifier}

Environment Variable and It’s Usage

The following variable is necessary to configure a startup application on the backend.

Name Required Description
i Yes Installation type - Specifies whether it is a new or upgrade installation.
u Yes Installation type - Specifies whether it is a new or upgrade installation.
h Yes Domain or IP address of the machine with HTTP protocol.
n Yes Setting this to “true” will automatically configure Bold BI with Nginx front-end server.
license Yes License key of Bold BI
databasetype Yes Type of database server to be used for configuring the Bold BI.
The following DB types are accepted:
1. mssql – Microsoft SQL Server/Azure SQL Database
2. postgresql – PostgreSQL Server
3. mysql – MySQL/MariaDB Server
databasehost Yes Name of the Database Server
databaseport No The system will use the following default port numbers based on the database server type. PostgrSQL – 5234
MySQL -3306
Please specify the port number for your database server if it is configured on a different port.
For MS SQL Server, this parameter is not necessary.
maintaindb No For PostgreSQL DB Servers, this is an optional parameter.
The system will use the database name postgres by default.
If your database server uses a different default database, please provide it here.
databaseuser Yes Username for the database server

Please refer to this documentation for information on the user's permissions.
databasepwd Yes The database user's password
databasename No If the database name is not specified, the system will create a new database called bold services.
If you specify a database name, it should already exist on the server.
email Yes It should be a valid email.
emailpwd Yes It should meet our password requirements.
usesiteidentifier No The variable is optional, and the default value is TRUE. By default, all sites in Bold BI require a site identifier, which differentiates sites on the same domain. That is https://example.com/bi/site/ You can ignore the site identifier by setting the value as FALSE. If the site identifier is disabled, each site requires a unique domain.
mainlogo loginlogo emaillogo favicon footerlogo Yes If you want to upload the custom image as a logo of the site, you can use these variables. If this environment variable is not present, Bold BI will use its default logo.

Type : URL

Example : https://cdn.boldbi.com/wp/pages/boldbi-header-menu-logo.svg

Format : png, svg, jpg, jpeg

Note: Enter the image URL for all the variables. If the value is given to any of the variables, you must consider other variables also a required field.
sitename Yes If you want to customize the site name, enter the site name as a value. The default site name is Bold BI Enterprise Dashboards
siteidentifier Yes If you want to customize the identifier name, enter the identifier name as a value. The default identifier name is site1

Example for silent installation:

sudo bash install-boldbi.sh -i new -u root -h http://linux.example.com -n true -license Bold_BI_license_key -databasetype postgresql -databasehost localhost -maintaindb defaultdb -databaseuser doadmin -databasepwd boldbi@123 -databasename testing -databaseport 25060 -email admin@boldbi.com -emailpwd Admin@123 -mainlogo https://cdn.boldbi.com/wp/pages/boldbi-header-menu-logo.svg -loginlogo https://cdn.boldbi.com/wp/pages/boldbi-header-menu-logo.svg -emaillogo https://cdn.boldbi.com/wp/pages/boldbi-header-menu-logo.svg -favicon https://cdn.boldbi.com/wp/pages/boldbi-header-menu-logo.svg -footerlogo https://cdn.boldbi.com/wp/pages/boldbi-header-menu-logo.svg -sitename Autodeployment -siteidentifier Branding