24 April 2019

CMDBUILD 3 Deploying Step by Step

CMDBUILD latest version released on April  12, 2019.

CMDBuild is an open source web enterprise environment, to configure custom applications for asset management.

CMDBuild allows the management of database of assets, like assets and business resources, equipment leased to customers, technological infrastructure and systems.It has native mechanisms to model the database, to design workflow, to configure reports and dashboards, to build connectors with external systems, to geo-refer assets, and to administer the system.Through these features, it allows the client to keep under control the situation of assets, knowing at all times the composition, dislocation, functional relations, rules for updating over time, and managing the complete life-cycle.The core code is kept separated from the business logic, to ensure maximum extensibility and to allow the use of CMDBuild as a base system to create custom and configurable vertical applications.


Server with OS Ubuntu 18.04: CPU – 2 , RAM – 4Gb, HDD – 30Gb, Internet.

Software prerequisite for CMDBUILD:

Name Version
Oracle JDK  1.8 
Apache Tomcat   8.5.34 
PostgreSQL   10.6
CMDBuild  3



At the moment, some of the documentation is in English, but the full is only in Italian.


User manual



Installation of related utilities

sudo apt-get install zip unzip 

Installation Oracle java 1.8

sudo add-apt-repository ppa:webupd8team/java
sudo apt install oracle-java8-installer 

Installation Postgres 10.6

sudo apt-get install postgresql postgresql-10-postgis-2.4 postgresql-10-postgis-scripts 

Set password for postgres user

sudo -u postgres psql template1
ALTER USER postgres WITH PASSWORD ‘postgres‘;


Create user for Apache Tomcat

sudo groupadd tomcat
sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat 


Installation CMDBUILD Ready2Use

Download the installation script cmdbuild.sh and run the installation

During installation, you can choose which data model to install:

demo.dump.xz  — Demo data
empty.dump.xz  — Empty model
ready2use.dump.xz  — Ready2Use


cd /tmp
wget -O cmdbuild.sh https://sourceforge.net/projects/cmdbuild/files/3.0/cmdbuild-3.0.sh/download
sudo chmod +x cmdbuild.sh
./cmdbuild.sh install

in the installation wizard, enter the following information:

tomcat: /opt/tomcat
http port: 8080
shutdown port: 8005
debug port: 8000
postgres database: localhost:5432/cmdbuild_prd
database dump: ready2use.dump.xz


Set permission on Apache Tomcat

chown tomcat -R /opt/tomcat 


Configuring firewall 

sudo ufw allow 8080 


Configuring Tomcat

To manage Apache Tomcat from a remote host, you must open the /opt/tomcat/conf/tomcat-users file.xml and add the line:

<user username=”admin” password=”password” roles=”manager-gui,admin-gui”/>


sudo nano /opt/tomcat/conf/tomcat-users.xml 

<tomcat-users . . .>
     <user username=”admin” password=”password” roles=”manager-gui,admin-gui”/>


To allow access to the external address

Comment out, <!– –>

sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml 

<Context antiResourceLocking=”false” privileged=”true” >
   <!–<Valve className=”org.apache.catalina.valves.RemoteAddrValve”
          allow=”127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1″ />–>


sudo nano /opt/tomcat/webapps/host-manager/META-INF/context.xml 

<Context antiResourceLocking=”false” privileged=”true” >
   <!–<Valve className=”org.apache.catalina.valves.RemoteAddrValve”
          allow=”127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1″ />–>


Running Apache Tomcat

cd /opt/tomcat/bin/
sudo -u tomcat ./catalina.sh start

In a couple of minutes the CMDBUILD application will start and will be available at:

Username: admin
Password: admin