How to Install JasperReports Server on Ubuntu Linux
JasperReports Server on Ubuntu Linux turns raw data into clean reports and charts that you can read, save as PDFs, or share in Excel. This free Java-based reporting tool runs on your server and lets you open your report dashboard right in your web browser at http://localhost:8080/jasperserver.
Install OpenJDK, MariaDB, and Tomcat. Create a database user for JasperReports. Download and unzip the JasperReports server installer, update its configuration file with your database credentials, and run the installation script.
Install Java OpenJDK
JasperReports runs on Java. You need to install the OpenJDK to support it.
sudo apt update sudo apt install default-jdk
Verify the installation with java --version.
Install MariaDB
You need a database to store your report information. MariaDB is a reliable choice.
sudo apt update sudo apt install mariadb-server sudo mysql_secure_installation
Follow the prompts to secure your database instance. How to install MariaDB on Ubuntu Linux
Create database account
sudo mysql CREATE DATABASE jasperserver; CREATE USER 'jasperadmin'@'localhost' IDENTIFIED VIA unix_socket; GRANT ALL ON jasperserver.* TO 'jasperadmin'@'localhost'; FLUSH PRIVILEGES; exit;
Install Tomcat server
Tomcat (a web server that runs Java applications) must be installed on your system before you can set up JasperReports Server Ubuntu. You need to create a dedicated user, make an installation folder, and download the software files to your server using the terminal commands.
sudo groupadd tomcat sudo useradd -s /bin/bash -g tomcat -d /opt/tomcat tomcat sudo mkdir /opt/tomcat wget https://dlcdn.apache.org/tomcat/tomcat-11/v11.0.0/bin/apache-tomcat-11.0.0.tar.gz sudo tar -xzvf apache-tomcat-11.0.0.tar.gz -C /opt/tomcat --strip-components=1 sudo chown -R tomcat: /opt/tomcat sudo sh -c 'chmod +x /opt/tomcat/bin/*.sh'
Create a systemd service config for Tomcat
A systemd service file (a configuration that tells Ubuntu how to run a program in the background) lets Tomcat start automatically when your computer boots up. You create this file in the system folder and add your Java paths so the web server runs correctly.
sudo nano /etc/systemd/system/tomcat.service
Use this configuration, noting the dynamic path for Java:
[Unit] Description=Tomcat servlet container After=network.target [Service] Type=forking User=tomcat Group=tomcat Environment="JAVA_HOME=$(dirname $(dirname $(readlink -f $(which java))))" Environment="CATALINA_HOME=/opt/tomcat" ExecStart=/opt/tomcat/bin/startup.sh ExecStop=/opt/tomcat/bin/shutdown.sh [Install] WantedBy=multi-user.target
sudo systemctl daemon-reload sudo systemctl start tomcat
Install JasperReports server
JasperReports Server Community Edition gets installed on your Ubuntu machine by downloading the setup files and unpacking them inside your Tomcat directory. You switch to the Tomcat user account to make sure the server has the right permissions to run the software.
sudo su - tomcat wget https://sourceforge.net/projects/jasperserver/files/JasperServer/JasperReports%20Server%20Community%20edition%209.0.0/TIB_js-jrs-cp_9.0.0_bin.zip unzip TIB_js-jrs-cp_9.0.0_bin.zip cd jasperreports-server-cp-9.0.0-bin/buildomatic cp sample_conf/mysql_master.properties default_master.properties nano default_master.properties
Update the default_master.properties file with your database credentials. Finally, run the installer:
./js-install-ce.sh
Access JasperReports portal
The JasperReports Server portal opens in any web browser once the service is running on your Ubuntu machine. Type your server address followed by port 8080 into the address bar, then log in using the default username jasperadmin and password jasperadmin.

Log in with the default credentials (username: jasperadmin, password: jasperadmin). Change these immediately after your first login.

For advanced setups, you can connect a reverse proxy to handle traffic more efficiently.
How to set up a reverse proxy with Nginx
How to set up a reverse proxy with Apache
[Unit] [Service] [Install] [echo]
Was this guide helpful?
About the Author
Richard
Tech Writer, IT Professional
Richard, a writer for Geek Rewind, is a tech enthusiast who loves breaking down complex IT topics into simple, easy-to-understand ideas. With years of hands-on experience in system administration and enterprise IT operations, he’s developed a knack for offering practical tips and solutions. Richard aims to make technology more accessible and actionable. He's deeply committed to the Geek Rewind community, always ready to answer questions and engage in discussions.
No comments yet — be the first to share your thoughts!