The Docker Image aims to quickly get up-and-running a JasperReports Server for a development environment.
To start the JasperServer container you'll need to pass in 5 environment variables and link it to either a MySQL or Postgres container.
E.g. docker run -d --name jasperserver -e DB_TYPE=mysql -e DB_HOST=db -e DB_PORT=3306 -e DB_USER=root -e DB_PASSWORD=mysql --link jasperserver_mysql:db -p 8080:8080 retriever/jasperserver
If you haven't got an existing MySQL or Postgres container then you can easily create one:
docker run -d --name jasperserver_mysql -e MYSQL_ROOT_PASSWORD=mysql mysql:5.7
To start up the JasperServer and a MySQL container:
docker-compose up
to run in foreground ordocker-compose up -d
to run as in daemon mode.To stop the containers run docker-compose stop
and docker-compose start
to restart them.
Note: To install Docker-compose see the releases page.
This image includes:
Use docker build -t retriever/jasperserver .
See comments in Dockerfile to speed up testing by not having to download the jasperserver release each time.
If you are having problems starting the containers because of a MySQL error like "[ERROR] [FATAL] Innodb: Table flags are 0...", then you will need to delete the data_dir which contains the MySQL database and then recreate the containers. Please note that you will lose any data previously stored in the database.
Since changes-to-docker-hub-autobuilds builds have to be done manually.
Steps to make a new official version of the image:
git tag
using the naming convention major.minor.iteration
where:
docker build -t retriever/jasperserver:7.5.0 -t retriever/jasperserver:latest .
docker login
)docker push retriever/jasperserver:7.5.0
and docker push retriever/jasperserver:latest
)docker rmi retriever/jasperserver:7.5.0 retriever/jasperserver:latest
and re-downloading from Dockerhub and run up container e.g. docker-compose up
.
datadir
to start fresh.