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.
| 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 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 |
| 5. | 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 |
| 6. | Install pip dependency package for ETL service by running the following command: sudo pip install duckdb===1.1.2 dlt===0.5.4 pymysql pyodbc pg8000 poetry pandas===2.2.2 "dlt[parquet]" "dlt[filesystem]" | Install pip dependency package for ETL service by running the following command: python3.9 -m pip install duckdb===1.1.2 dlt===0.5.4 pymysql pyodbc pg8000 poetry pandas===2.2.2 "dlt[parquet]" "dlt[filesystem]" |
| 7. | 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/ |
Please register and download the Bold BI Linux package.
Download the Bold BI Linux package by running the command:
sudo wget {Bold BI Linux package link}Extract the zip file by running the command:
sudo unzip {Bold BI Linux package zip file}Change the directory to the BoldBIEnterpriseEdition-Linux by running the command:
cd BoldBIEnterpriseEdition-LinuxExecute 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} --ssl-cert {ssl certificate path} --ssl-key {ssl key path} -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}The following variable is necessary to configure a startup application on the backend.
| Name | Required | Description |
| i | Yes | Installation type - Specify it as new. |
| u | Yes | Specify the user or group that manages the service. Make sure this user exists on your Linux server. |
| 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. |
| ssl-cert | Yes | Specify the path in which the SSL certificate is present. |
| ssl-key | Yes | Specify the path in which the SSL key is present. |
| license | No | 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. |
| 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 | No |
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 | No | 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 | No | If you want to customize the identifier name, enter the identifier name as a value. The default identifier name is site1 |
| optionallibs | No | To install the client libraries, provide the values as a comma-separated string. The client libraries used in Bold BI are "mongodb,influxdb,snowflake,mysql,oracle,google,clickhouse". You need to add the names only for the libraries, which you are consenting to use with Bold BI application. |
| installdatahub | No | By setting this value to "true," the ETL application will be installed automatically alongside Bold BI. If this parameter is not specified, a confirmation pop-up will prompt for the ETL installation. |
Example for silent installation:
sudo bash install-boldbi.sh -i new -u root -h http://linux.example.com -n true --ssl-cert /etc/ssl/domain.crt --ssl-key /etc/ssl/domain.key -databasetype postgresql -databasehost localhost -maintaindb defaultdb -databaseuser doadmin -databasepwd boldbi@123 -databasename testing -databaseport 25060 -email [email protected] -emailpwd Admin@123