Table of contents

How to install

Debian/Ubuntu operating system

Installation instructions are for Debian (tested on stretch, buster) and Ubuntu (tested on 16.04, 18.04). Please install MINERVA using the following command:

curl -s -o; \
sudo bash; \
Run MINERVA platform by entering:
http://localhost:8080/minerva/ in the web browser
Use the following admin credentials to log in to the admin panel
login: admin
password: admin
Follow instructions in the Administrator manual to change the password and, if needed, to add new users.

Virtual Machine image

You can download an image of a virtual machine running Debian Linux and a working instance of MINERVA platform using the following link. Choose the version you would like to try and download minerva-*_release.ova file.

Suggested tool to open and use is Oracle VM VirtualBox.

Once the VM is running, run MINERVA platform by entering: http://localhost:8080/minerva/ in the web browser of the VM.

Use the following admin credentials to log in to the admin panel:

login: admin
password: admin

In case you’d like to configure the VM, root credentials are

login: root
password: 123qweasdzxc


We prepared a docker compose configuration. To make it running just clone the repository and start it:

git clone
cd docker
docker-compose up

Once the container is installed, run MINERVA platform by entering: http://localhost:8080/minerva/ in the web browser.

Use the following admin credentials to log in to the admin panel:

login: admin
password: admin

Red Hat Enterprise Linux 7 / CentOS 7 (RPM package)

Install PostgreSQL and set up a database

yum install -y
yum install -y postgresql96-server
/usr/pgsql-9.6/bin/postgresql96-setup initdb

Ensure that the database authentication on IPv4 on localhost is done with md5-based passwords by adding the following line to /var/lib/pgsql/9.6/data/pg_hba.conf

host    all             all               md5

Enable and start postgresql

systemctl enable postgresql-9.6
systemctl start postgresql-9.6

Create the MINERVA database user and the database

su - postgres -c "createuser -d -r -s map_viewer"
su - postgres -c "echo \"ALTER USER map_viewer WITH PASSWORD 'yourSecretPasswordHere';\"| psql"
su - postgres -c "createdb -O map_viewer map_viewer"

Install and configure Apache Tomcat

Minerva requires Apache Tomcat 8 or higher. CentOS provides only package for Tomcat 7. Therefore you need to install it manually.

Create a new tomcat group and tomcat user

sudo groupadd tomcat
sudo useradd -M -s /bin/nologin -g tomcat -d /opt/tomcat tomcat

Download Tomcat Binary

sudo mkdir /opt/tomcat
sudo tar xvf apache-tomcat-8*tar.gz -C /opt/tomcat --strip-components=1

Update Permissions

cd /opt/tomcat
sudo chgrp -R tomcat /opt/tomcat
sudo chmod -R g+r conf
sudo chmod g+x conf
sudo chown -R tomcat webapps/ work/ temp/ logs/

Install Systemd Unit File. Create a file /etc/systemd/system/tomcat.service (you might want to change memory settings specified in CATALINA_OPTS):

# Systemd unit file for tomcat
Description=Apache Tomcat Web Application Container


Environment='CATALINA_OPTS=-Xms2048M -Xmx4096M -server -XX:+UseParallelGC'

ExecStop=/bin/kill -15 $MAINPID



Reload Systemd to load the Tomcat unit file

sudo systemctl daemon-reload

Enable and start Tomcat

sudo systemctl enable tomcat
sudo systemctl start tomcat

Make sure to open the port (by default port 8080) to allow incoming connections, e.g. using firewalld this can be accomplished with

firewall-cmd --permanent --zone=public --add-port=8080/tcp

If SELinux is enabled on your machine make sure that tomcat is allowed to connect postgres (relevant stackoverflow post)

WARNING: Currently the initial administrator password of MINERVA is hardcoded, therefore make sure the MINERVA cannot be accessed from distrusted hosts until the password was changed.

Install the MINERVA rpm

Create a configuration file at /etc/minerva/ so MINERVA knows how to connect to the database:


Download MINERVA rpm from Here is a link to version 14.0.0:


Install MINERVA with

yum install -y minerva-14.0.0-1.el7.noarch.rpm

Migration from version 13.2.x and lower

Minerva 14 and higher require Apache Tomcat 8. Previous versions could work on Apache Tomcat 7.

Debian/Ubuntu operating system

Migration will be done automatically on Debian/Ubuntu systems.


Pulling the newest version of docker-compose repository solves the tomcat8 dependency.

Red Hat Enterprise Linux 7 / CentOS 7

Before you install new version of MINERVA you would need to remove old rpm based tomcat:

sudo yum remove tomcat

And install new tomcat manually as described in the install section. Tomcat7 stored data in different place than manually installed tomcat8. Move the data to tomcat8 folder:

sudo mv /var/lib/tomcat/webapps/map_images /opt/tomcat/webapps/
sudo mv /var/lib/tomcat/webapps/minerva-big /opt/tomcat/webapps/


Currently MINERVA supports only postgresql database. We support versions 9.4>=, 10.0>=, 11.0>=. Database can be configured in a /etc/minerva/ file. This file should look like:



  • host - host where database is located (localhost for local instances)
  • port - port on which postgres is listening (by default it should be 5432)
  • database_name - name of the database
  • database_user - user that has access to the database
  • database_password - user password

Database should be empty when MINERVA is starting for the first time. It will be automatically initialized. It’s also possible run MINERVA on database with content from the former version (but at least 12.1). In such situation migration to the new schema will happen automatically on tomcat start.


Default MINERVA logs will be stored in ${sys:catalina.base}/logs/minerva.txt file, where ${sys:catalina.base} is tomcat home directory (typically it would be something like /var/lib/tomcat8/logs/minerva.txt). MINERVA uses log4j2 library as a logging mechanism. Logs can be customized by creating /etc/minerva/ file. Default configuration used by MINERVA is available here: More information how to configure log4j2 can be found on the library homepage.


curl: command not found

Usually curl should be installed on you machine. In case it is not, you can install it by yourself:

sudo apt install curl

update of minerva

Minerva installed as debian package could be updated as other packages in your OS. You can manually trigger update of the minerva package:

sudo apt-get update
sudo apt-get --only-upgrade install minerva

If these commands do not update minerva on your machine then probably some tool overridden list of repositories on your machine (for example: puppet-agent). In such situation you can fix the list of repositories and update minerva by:

echo "deb stable main" | sudo tee /etc/apt/sources.list.d/repo-r3lab.list
sudo apt-key adv --keyserver hkp:// --recv-keys 0xcb185f4e31872412
sudo apt-get update
sudo apt-get --only-upgrade install  minerva

java installation

Prior to minerva 13.0.0 Debian package installing minerva would install oracle java 8 and will make it a default version of a java running on Debian. So if you were using older version of java you might notice that something has changed. Currently minerva uses openjdk-8/openjdk-11.

Upload of a big map

By default tomcat is running on limited amount of memory. If you upload big map you might encounter failure problem that was raised by out of memory error. To increase amount of available memory, please read here.

Exported CellDesigner file

Very rarely, generated CellDesigner files might be corrupted and cannot be opened using CellDesigner. We are aware of this and we are constantly working on updating the export function. If this error happens to you, please send us small examples so we can track problem faster.

Installation of debian package

In case you have some problems with installing debian package (apt-get fails) you will be able to find more information in the log file:


When minerva is working on tomcat8 the log file is located in:


You can also check tomcat8 logs:


Back to top