infofabrik/reportserverenterprise
ReportServer is the modern and versatile business intelligence (OSBI) platform for your company.
1.5K
Unfortunately, upgrading the reportserver docker container is currently only possible using following workaround. We're currently working on a upgrade script as well as a more stable startup of the container!
Backup your Database, added Files (like libraries) and configurations!
Enter your container (docker exec -it CONTAINER_NAME bash)
(OPTIONAL) Install an texteditor you like (I recommend: apt-get install nano)
Edit scripts/startRS.sh or startSTANDALONE.sh depending which container variant you're using (nano scripts/startRS.sh) The File should now look like:
#!/bin/bash
vers="{\"major\":$1,\"minor\":$2,\"patch\":$3,\"build\":$4}"
set JAVA_OPTS=++JvmOptions="-Dfile.encoding=UTF8" ++JvmOptions="--add-opens=java.base/java.net=ALL-UNNAMED" ++JvmOptions="--add-opens=java.base/jdk.internal.ref=ALL-UNNAMED" ++JvmOptions="-Djavax.net.ssl.trustStoreType=JKS" ++JvmOptions="--add-opens=java.base/java.util=ALL-UNNAMED" --JvmMs 512 --JvmMx 1536
set JDK_JAVA_OPTIONS=
echo extra vars: $vers
# ansible-playbook -i localhost, buildTemplates.yml --extra-vars=$vers
# tree ./configs
# cp -R ./configs/rootfs/* ./
# chmod -R +x ./scripts
# tree scripts
#./scripts/initDB.sh &&
# catalina.sh run
tail -f /dev/null
Exit your container and restart it (docker restart CONTAINER_NAME)
Now you've got a container without a running tomcat!
Download your reportserverversion ( I recommend: "curl https://reportserver.net/spp/download-rs.php?version=latest -o reportserver.zip" )
Do your upgrade (as described in https://reportserver.net/en/tutorials/upgrade-30/ )
Comment the line "catalina.sh run" of the file "scripts/startRS.sh" back in and remove the "tail -f /dev/null" (We want tomcat to be started at the next container restart) The file should now look like this:
#!/bin/bash
vers="{\"major\":$1,\"minor\":$2,\"patch\":$3,\"build\":$4}"
set JAVA_OPTS=++JvmOptions="-Dfile.encoding=UTF8" ++JvmOptions="--add-opens=java.base/java.net=ALL-UNNAMED" ++JvmOptions="--add-opens=java.base/jdk.internal.ref=ALL-UNNAMED" ++JvmOptions="-Djavax.net.ssl.trustStoreType=JKS" ++JvmOptions="--add-opens=java.base/java.util=ALL-UNNAMED" --JvmMs 512 --JvmMx 1536
set JDK_JAVA_OPTIONS=
echo extra vars: $vers
# ansible-playbook -i localhost, buildTemplates.yml --extra-vars=$vers
# tree ./configs
# cp -R ./configs/rootfs/* ./
# chmod -R +x ./scripts
# tree scripts
#./scripts/initDB.sh &&
catalina.sh run
# tail -f /dev/null
docker run -it -p 8081:8080 infofabrik/reportserverenterprise:4.3.0.6081-standalone
and navigate to http://127.0.0.1:8081
using
--rm
as parameter will remove the container after it stopped.
version: '3'
services:
mariadb:
image: mariadb
container_name: mariadb
hostname: mariadb
command: --lower_case_table_names=1
environment:
MARIADB_USER: reportserver
MARIADB_PASSWORD: reportserver
MARIADB_ROOT_PASSWORD: s3cur1ty!
healthcheck:
test: "/usr/bin/mysql --user=reportserver --password=reportserver --execute \"SHOW DATABASES;\""
interval: 10s
timeout: 30s
retries: 10
start_period: 5s
ports:
- '3306:3306'
reportserver:
image: reportserverenterprise:latest
container_name: reportserver
hostname: reportserver
environment:
REPORTSERVER_DATABASE_HOST: mariadb
REPORTSERVER_DATABASE_PORT: 3306
REPORTSERVER_DATABASE_USER: reportserver
REPORTSERVER_DATABASE_NAME: reportserver
REPORTSERVER_DATABASE_PASSWORD: reportserver
REPORTSERVER_DATABASE_ROOTPASSWORD: s3cur1ty!
ports:
- "8081:8080"
links:
- "mariadb:mariadb"
depends_on:
mariadb:
condition: service_healthy
networks:
default:
name: reportserver-ee-network
Start your compose with docker-compose up
For more information on how to configure or use your Reportserver: https://reportserver.net/en/tutorials/tutorial-get-started/
docker pull infofabrik/reportserverenterprise