Pixel-perfect Reporting for Data Analysis and insight
1M+
Embed Pixel-Perfect Reporting in Products.
Generate branded, paginated, high-volume reports inside your app, with exact layout control, automated delivery, and export-ready output.
latest, 26.3.1, 26310.B202610291545, 26.3-sp1, 26.3-sp1-jdk21, 26.3.1-jdk21
26.3.1-jdk25, 26310.B202610291545-jdk25, 26310-jdk25
26.3.1-jdk17, 26310.B202610291545-jdk17, 26310-jdk17
26.3.1-jdk11, 26310.B202610291545-jdk11, 26310-jdk11
26.3.1-jdk8, 26310.B202610291545-jdk8, 26310-jdk8
26.3, 26300.B202609301050, 26.3-ga, 26.3-ga-jdk21, 26.3-jdk21
26.3-jdk25, 26300.B202609301050-jdk25, 26300-jdk25
26.3-jdk17, 26300.B202609301050-jdk17, 26300-jdk17
26.3-jdk11, 26300.B202609301050-jdk11, 26300-jdk11
26.3-jdk8, 26300.B202609301050-jdk8, 26300-jdk8
26.2.2, 26220.B202608281019, 26.2-sp2, 26.2-sp2-jdk21, 26.2.2-jdk21
26.2.2-jdk25, 26.2-sp2-jdk25, 26220-jdk25
26.2.2-jdk17, 26.2-sp2-jdk17, 26220-jdk17
26.2.2-jdk11, 26.2-sp2-jdk11, 26220-jdk11
26.2.2-jdk8, 26.2-sp2-jdk8, 26220-jdk8
26.2.1, 26210.B202607302331, 26.2-sp1, 26.2-sp1-jdk21, 26.2.1-jdk21
26.2.1-jdk25, 26.2-sp1-jdk25, 26210-jdk25
26.2.1-jdk17, 26.2-sp1-jdk17, 26210-jdk17
26.2.1-jdk11, 26.2-sp1-jdk11, 26210-jdk11
26.2.1-jdk8, 26.2-sp1-jdk8, 26210-jdk8
26.2, 26200.B202603310906, 26.2-ga, 26.2-ga-jdk21, 26.2-jdk21
26.2-jdk25, 26200-jdk25
26.2-jdk17, 26200-jdk17
26.2-jdk11, 26200-jdk11
26.2-jdk8, 26200-jdk8
26.1.2, 26120.B202605291551, 26.1-sp2, 26.1-sp2-jdk21, 26.1.2-jdk21
26.1.2-jdk25, 26.1-sp2-jdk25, 26120-jdk25
26.1.2-jdk17, 26.1-sp2-jdk17, 26120-jdk17
26.1.2-jdk11, 26.1-sp2-jdk11, 26120-jdk11
26.1.2-jdk8, 26.1-sp2-jdk8, 26120-jdk8
26.1.1, 26110.B202604281023, 26.1-sp1, 26.1-sp1-jdk21, 26.1.1-jdk21
26.1.1-jdk25, 26.1-sp1-jdk25, 26110-jdk25
26.1.1-jdk17, 26.1-sp1-jdk17, 26110-jdk17
26.1.1-jdk11, 26.1-sp1-jdk11, 26110-jdk11
26.1.1-jdk8, 26.1-sp1-jdk8, 26110-jdk8
26.1, 26100.B202603310906, 26.1-ga, 26.1-ga-jdk21, 26.1-jdk21
26.1-jdk25, 26100-jdk25
26.1-jdk17, 26100-jdk17
26.1-jdk11, 26100-jdk11
26.1-jdk8, 26100-jdk8
docker rundocker run --name logireport-server -itd \
-e USERKEY="<fake_user_key>" \
-e USERPASSWORD="<fake_user_password>" \
-e LGRPT_ADMIN_USERNAME=admin \
-e LGRPT_ADMIN_PASSWORD=admin_Pass30rd \
-e LGRPT_INIT_HEAP_SIZE=700m \
-e LGRPT_MAX_HEAP_SIZE=16g \
-e LGRPT_RESTART_TIMEOUT=10 \
-p 8888:8888/tcp logianalytics/logireport-server
Then access the service at http://localhost:8888/
services:
logireport-server:
environment:
# License key and password for LogiReport Server
# Replace with your actual user key and password.
- USERKEY=<fake_user_key>
- USERPASSWORD=<fake_user_password>
# Set the admin user password for LogiReport Server
# Replace with your actual admin user and password
- LGRPT_ADMIN_USERNAME=admin
- LGRPT_ADMIN_PASSWORD=admin_Pass30rd
# Initial and maximum heap sizes for the LogiReport Server JVM
- LGRPT_INIT_HEAP_SIZE=700m
- LGRPT_MAX_HEAP_SIZE=16g
# Timeout in second for server restart when getting abnormal shutdown
- LGRPT_RESTART_TIMEOUT=10
# For version upgrades, just change the image tag to the new version.
# For example, to upgrade from v25.1.1 to version v25.1.4, change the image tag to `logianalytics/logireport-server:25.1.4`.
# Note: you can only upgrade to a newer version, not downgrade to an older version, if you use an older version tag,
# you'll be prompted 'This docker image version, vXXXX cannot work with the installed version, vYYYY, will exit.'
# in the container logs.
image: logianalytics/logireport-server
ports:
- "8888:8888/tcp"
Then access the service at http://localhost:8888/
export VERSION=26.3
helm upgrade --install logireport-server \
oci://registry-1.docker.io/logianalytics/logireport-server \
--version ${VERSION}-helm --namespace logireport-test --create-namespace
# Optional: Forwarding local port 8080 to service port 8888.
kubectl port-forward -n logireport-test service/logireport-server 8080:8888
Then access Logi Report Server at http://localhost:8080/
In this docs, we are deploying helm chart into an Auto Mode EKS cluster. Please adjust relevant configurations according to your actual environment.
logireport-ebs-sckubectl apply -f - <<'EOF'
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: logireport-ebs-sc
provisioner: ebs.csi.eks.amazonaws.com
volumeBindingMode: WaitForFirstConsumer
parameters:
type: gp3
EOF
helm upgrade --install logireport-server \
oci://registry-1.docker.io/logianalytics/logireport-server \
--version "${VERSION}-helm" \
--namespace logireport-test --create-namespace \
--set persistence.shared.enabled=true \
--set persistence.shared.storageClass=logireport-ebs-sc \
--set persistence.custom-resources.enabled=true \
--set persistence.custom-resources.storageClass=logireport-ebs-sc \
--set prepareJdbcDrivers.enabled=true \
--set env.LGRPT_SYSDB_TYP=Production \
--set env.LGRPT_SYSDB_JDBC_URL="jdbc:mysql://<the_mysqldb_host>[:port]/logireport" \
--set env.LGRPT_SYSDB_JDBC_DRIVER_CLASSNAME="com.mysql.cj.jdbc.Driver" \
--set env.LGRPT_SYSDB_JDBC_DRIVER_PATH=/var/lib/logi-report/custom/lib/mysql-connector-java-8.0.30.jar \
--set env.LGRPT_SYSDB_USERNAME="<the_db_username>" \
--set env.LGRPT_SYSDB_PASSWORD="<the_db_password>"
createIngressClass=true also creates the cluster-scoped IngressClass;
omit it if the cluster already has one and set ingress.className to that class instead.
helm upgrade --install logireport-server \
oci://registry-1.docker.io/logianalytics/logireport-server \
--version "${VERSION}-helm" \
--namespace logireport-test --create-namespace \
--set persistence.shared.enabled=true \
--set persistence.shared.storageClass=logireport-ebs-sc \
--set persistence.custom-resources.enabled=true \
--set persistence.custom-resources.storageClass=logireport-ebs-sc \
--set ingress.enabled=true \
--set ingress.createIngressClass=true \
--set-string 'ingress.annotations.alb\.ingress\.kubernetes\.io/inbound-cidrs=10.10.10.0/24\,10.10.20.0/24\,8.39.144.0/24\,31.186.239.0/24\,163.116.128.0/17\,162.10.0.0/17\,8.36.116.0/24'
# Get the ALB address (it may take a few minutes to be provisioned).
kubectl get ingress logireport-server -n logireport-test
# Other ALB settings (internal scheme, HTTPS certificate, ...) can be overridden under 'ingress.annotations' in a values file.
# With the AWS Load Balancer Controller (non Auto Mode) set 'ingress.controller=ingress.k8s.aws/alb'.
helm show values oci://registry-1.docker.io/logianalytics/logireport-server --version ${VERSION}-helm
helm uninstall -n logireport-test logireport-server
If you want to keep things report history and/or custom resources, deployed reports,
and server settings, and use them in a new container, mount container paths
/var/lib/logi-report/custom and/or /var/lib/logi-report/shared to volumes:
docker run --name logireport-server -itd -p 8888:8888/tcp \
-v custom_res:/var/lib/logi-report/custom \
-v shared:/var/lib/logi-report/shared \
logianalytics/logireport-server
or use docker compose:
services:
logireport-server:
image: logianalytics/logireport-server
ports:
- "8888:8888/tcp"
volumes:
# Bind customized REPORTHOME resources in container to a volume
# on the host machine for persisting LogiReport Server data.
- custom_res:/var/lib/logi-report/custom
- shared:/var/lib/logi-report/shared
volumes:
# Volume definition for persisting LogiReport Server data.
# For demo, we are using named volume on the docker host here.
# You can also use a host path, NFS or a cloud storage solutions (e.g. AWS EBS/EFS).
# When using a host path or NFS, make sure the path is writable by
# the container user (logi user with UID 1106).
custom_res: {}
shared: {}
Server logs can be found in the following directory inside the container:
/opt/LogiReport/Server/logs
You can also stream the logs to the container console for easier access to the logs, set log levels, and configure console logs destination using environment variables.
All logger types support the following log levels:
OFF: Disable logging.ERROR: Only log error messages.WARN: Log warning and error messages.INFO: Log informational, warning, and error messages.DEBUG: Log debug, informational, warning, and error messages.TRACE: Log trace, debug, informational, warning, and error messages.services:
logireport-server:
environment:
# Stream Server logs to container console
- LGRPT_ENABLE_CONSOLE_LOGS_DESTINATION=true
# Log level settings
- LGRPT_LOGGER_ENGINE_LEVEL=ERROR
- LGRPT_LOGGER_DHTML_LEVEL=ERROR
- LGRPT_LOGGER_DESIGNER_LEVEL=ERROR
- LGRPT_LOGGER_EVENT_LEVEL=ERROR
- LGRPT_LOGGER_ERROR_LEVEL=ERROR
- LGRPT_LOGGER_ACCESS_LEVEL=ERROR
- LGRPT_LOGGER_MANAGE_LEVEL=ERROR
- LGRPT_LOGGER_DEBUG_LEVEL=ERROR
- LGRPT_LOGGER_PERFORMANCE_LEVEL=ERROR
- LGRPT_LOGGER_DUMP_LEVEL=ERROR
image: logianalytics/logireport-server
ports:
- "8888:8888/tcp"
The built-in hsqldb in the out of box docker image is just for demo purposes. For production use, you should use a real database such as PostgreSQL, MySQL, or Oracle.
You can set the database connection properties using environment variables when running the container. For example, to use PostgreSQL, you can set the following environment variables:
services:
logireport-server:
environment:
# Database settings for Server
- LGRPT_SYSDB_TYP=Production
- LGRPT_SYSDB_JDBC_URL=jdbc:postgresql://your-db-host/logireport
- LGRPT_SYSDB_JDBC_DRIVER_CLASSNAME=org.postgresql.Driver
# Download the PostgreSQL JDBC driver from https://jdbc.postgresql.org/download/postgresql-42.7.3.jar
# to the ./additional-lib folder on the host machine, and then bind mount it to this path in the container.
- LGRPT_SYSDB_JDBC_DRIVER_PATH=/var/lib/logi-report/additional-lib/postgresql-42.7.3.jar
- LGRPT_SYSDB_USERNAME=your_db_username
- LGRPT_SYSDB_PASSWORD=your_db_password
image: logianalytics/logireport-server
ports:
- "8888:8888/tcp"
volumes:
# Bind additional java libraries, such as JDBC drivers, to the container.
# Put jar files into ./additional-lib folder on the host machine.
- ./additional-lib:/var/lib/logi-report/additional-lib
Server supports clustering for high availability and load balancing. To enable clustering, set the following environment variables:
services:
logireport-server:
environment:
- LGRPT_CLUSTER_ENABLE=true
- LGRPT_CLUSTER_NAME=logireport-cluster
# Set the cluster history directory, which should be shared across all nodes in the cluster.
# Make sure the directory exists and is writable by the logi user (UID 1106).
- LGRPT_HISTORY_DIRECTORY=/var/lib/logi-report/shared/history
# Enable automatic host detection for cluster nodes.
- LGRPT_JAVA_OPTS=-Djreport.cluster.auto_detect_host=true
image: logianalytics/logireport-server
ports:
- "8888:8888/tcp"
volumes:
# Bind named volume for persisting LogiReport Server history.
- shared_data:/var/lib/logi-report/shared
volumes:
# Define a named external volume for persisting LogiReport Server history.
shared_data:
driver: local
driver_opts:
type: nfs4
o: addr=10.123.45.16,rw,noatime,nolock
device: :/Public/logireport/shared
Server supports TrueType fonts for report rendering. To add custom TrueType fonts, bind mount the font folder with TTF files to the container:
services:
logireport-server:
image: logianalytics/logireport-server
ports:
- "8888:8888/tcp"
volumes:
# Put TTF files into ./font folder on the host machine,
# and mount it to font subdirectory under the customized
# resources directory in the container.
- ./font:/var/lib/logi-report/custom/font
The main Server installation directory inside the container is /opt/LogiReport/Server.
The /var/lib/logi-report/custom directory is used for customizations, additional resources,
and configuration overrides (such as custom fonts, CSS/HTML/JS files, or property files),
please keep the directory structure same as /opt/LogiReport/Server,
so that the customized resources can be correctly applied.
For example, you can customize the Server properties by binding a custom server.properties file from your host to the container path /var/lib/logi-report/custom/bin/install.server.properties. This allows you to override server properties without modifying the main installation directory.
You can also customize the HTTP response headers by binding a custom responseHeaders.properties file to the container file /var/lib/logi-report/custom/bin/responseHeaders.properties.
services:
logireport-server:
image: logianalytics/logireport-server
ports:
- "8888:8888/tcp"
volumes:
# Bind customized server properties file to the server container.
- ./bin/server.properties:/var/lib/logi-report/custom/bin/install.server.properties
# Bind customized http response headers to the server container.
# Refer to https://docs-report.zendesk.com/hc/en-us/articles/12491438683277-Security-for-Accessing-Web-Pages#HTTPHeader
# for more information.
- ./bin/responseHeaders.properties:/var/lib/logi-report/custom/bin/responseHeaders.properties
Please refer to the Server documentation for a complete list of available environment variables and their descriptions.
Where to get help: Server Documentation, Docker Community Forums, Docker Blog or Stack Overflow
Maintained by: Logi Analytics
Supported Docker versions: Latest release (down to 1.6 on a best-effort basis)
https://www.insightsoftware.com/simba/pixel-perfect-reporting/
Content type
Image
Digest
sha256:a8918dae6…
Size
833.2 MB
Last updated
2 days ago
docker pull logianalytics/logireport-server