André Voltolini
André Voltolini

Reputation: 446

Jasper Server Community Edition on Docker

Tibco has made the Dockerfile and supporting scripts for running TIBCO JasperReports® Server in a Docker container. What do I need to change in these files to support the Community Edition?

https://github.com/TIBCOSoftware/js-docker/

Thanks.

Upvotes: 4

Views: 6918

Answers (2)

buddemat
buddemat

Reputation: 5301

You can also alternatively use the JasperReports Server docker from bitnami, which uses the CE version of the server:

https://github.com/bitnami/bitnami-docker-jasperreports

Update: Apparently the previous github link no longer works and the current version can be found here:

https://github.com/bitnami/containers/tree/main/bitnami/jasperreports

or, on dockerhub:

https://hub.docker.com/r/bitnami/jasperreports/

Upvotes: 4

Robinyo
Robinyo

Reputation: 596

You need to make changes to the js-docker Docker files, shell scripts and roll your own Docker Compose file, for example:

version: '3.7'

services:

  postgres:
    container_name: postgres
    build:
      context: ./services/postgres
      dockerfile: Dockerfile
    ports:
      - "5432:5432"
    volumes:
      - .:/var/lib/postgresql/data
    env_file: ./services/postgres/postgres.env

  pgadmin:
    container_name: pgadmin
    build:
      context: ./services/pgadmin
      dockerfile: Dockerfile
    environment:
      PGADMIN_DEFAULT_EMAIL: ${PGADMIN_DEFAULT_EMAIL:[email protected]}
      PGADMIN_DEFAULT_PASSWORD: ${PGADMIN_DEFAULT_PASSWORD:-secret}
    ports:
      - "${PGADMIN_PORT:-5050}:80"
    volumes:
      - .:/root/.pgadmin

  jasperreports-server:
    container_name: jasperreports-server
    build:
      context: ./services/jasperreports-server
      dockerfile: Dockerfile
    ports:
      - "11001:8080"
      - "11443:8443"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - ./license:/usr/local/share/jasperserver/license
      - ./keystore:/usr/local/share/jasperserver/keystore
    env_file: ./services/jasperreports-server/jasperreports-server.env
    environment:
      - DB_HOST=postgres
    depends_on:
      - jasperreports-server-cmdline
    command: ["/wait-for-container-to-exit.sh", "jasperreports-server-cmdline", "-t" , "30", "--", "/entrypoint-ce.sh", "run"]

  jasperreports-server-cmdline:
    container_name: jasperreports-server-cmdline
    build:
      context: ./services/jasperreports-server
      dockerfile: Dockerfile-cmdline
    volumes:
      - ./license:/usr/local/share/jasperserver/license
      - ./keystore:/usr/local/share/jasperserver/keystore
    env_file: ./services/jasperreports-server/jasperreports-server.env
    environment:
      - DB_HOST=postgres
      - JRS_LOAD_SAMPLES=true
    depends_on:
      - postgres
    command: ["/wait-for-it.sh", "postgres:5432", "-t" , "30", "--", "/entrypoint-cmdline-ce.sh", "init"]

Take a look at this example GitHub repo: https://github.com/Robinyo/serendipity-api/tree/master/projects/spring-boot/server/services/jasperreports-server

Upvotes: 3

Related Questions