Installation¶
Report Server installs with Docker Compose or the AcuGIS APT repository. Installing the JasperReports WAR by itself is not a Report Server installation. The WAR is the fill engine used by the package and by the Docker image.
The packaged server listens on http://127.0.0.1:9088/ with base path /. Apache on a Debian install proxies / to that address. A custom JRS_BASE_PATH changes the URL prefix.
Docker Compose¶
Clone the deployment repository, run setup, then start Report Server. Setup creates .env. It generates the internal PostgreSQL password and the Designer internal token, asks for the administrator username and password, and asks for the timezone. It does not print either secret.
git clone https://github.com/AcuGIS/report-server-docker
cd report-server-docker
docker compose run --rm -it report-server-setup
docker compose up -d
Open http://127.0.0.1:9088/.
Compose pulls published images. The default Report Server image is acugis/report-server:1.0.21-professional. Report Designer Web is acugis/report-designer-web:1.0.8. For the Open Source image, set REPORT_SERVER_IMAGE=acugis/report-server:1.0.21-oss on the setup command. Setup records that image name in .env. Further options are in Docker.
Ubuntu / Debian¶
Add the AcuGIS package repository, then install Report Server.
curl -fsSL https://apt.acugis.com/acugis-archive-keyring.gpg \
-o /usr/share/keyrings/acugis-archive-keyring.gpg
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/acugis-archive-keyring.gpg] https://apt.acugis.com stable main" \
> /etc/apt/sources.list.d/acugis.list
apt update
apt install acugis-report-server
The package depends on OpenJDK 17, PostgreSQL, Apache, and PHP CLI. On first configure it can create the jasper database user and jasper_reports database, download Tomcat 10.1 when /opt/tomcat is missing, seed the admin user, and start acugis-report-server.service and acugis-tomcat.service.
Generated database and admin passwords are written to /etc/acugis-report-server/initial-credentials when they were not supplied. The service environment is /etc/acugis-report-server/env.
Open http://127.0.0.1:9088/.
Tomcat’s HTTP connector uses port 8080. The installer does not restrict that connector to loopback. The package sets Report Server to reach Jasper at:
An Open Source install can be replaced later with the Professional package:
That keeps /etc/acugis-report-server/env and application data. The Professional package compiles modules the Open Source package does not, including Data Explorer and embedded QGIS before a license is activated. License-gated modules stay off until a license is valid. See the compatibility matrix. Installing the Open Source package over Professional is refused.
apt remove and apt purge stop the units and do not drop PostgreSQL or the report files.
Release tarball¶
The tarball is a precompiled archive. install.sh is the installer copied into that archive. It refuses to run from a source checkout: bin/jrs-server must already be present. It does not download the product.
tar -xzf acugis-report-server-<edition>-<version>-linux-amd64.tar.gz
cd acugis-report-server
sudo ./install.sh
<edition> is oss or professional. The installer calls the same setup used by the Debian package: Java 17, Tomcat 10.1, PostgreSQL, the env file, then schema and forward migrations, and the systemd units. Default install root is /opt/acugis-report-server.
If JRS_DB_PASS and JRS_ADMIN_PASSWORD are unset, they are generated into /etc/acugis-report-server/initial-credentials.
Open http://127.0.0.1:9088/.
What the package runs¶
| Unit | Role |
|---|---|
acugis-report-server.service |
Go UI and API on 127.0.0.1:9088 |
acugis-tomcat.service |
JasperReports WAR. Tomcat’s HTTP connector uses port 8080. Report Server calls http://127.0.0.1:8080/report. The installer does not bind that connector to loopback. |
jrs-schedule-<id>.timer |
Created when a schedule is saved |
Developer checkout¶
make run from go-report-server starts the Go process from source. It is not a product install. The packaged .deb, the release tarball, and Docker Compose are the installation methods above.
If JRS_JASPER_INTERNAL_REPORT_URL is unset, the Go process falls back to http://127.0.0.1:9099/report. That fallback is not used by the Debian package or by Docker Compose. Both of those set port 8080. When you run Tomcat 10 yourself for a checkout, set the Jasper URL to http://127.0.0.1:8080/report.
Local auth bypass
JRS_AUTH_DISABLED=1 injects a synthetic admin for local smoke tests only. Never enable it on a production host.
Verify¶
The catalog is at /, login at /login.php, and Swagger at /swagger. With JRS_BASE_PATH=/go, those paths are under /go.