Link

How to run the JPedal Docker Image

Table of contents

  1. Launching JPedal
  2. Download or Build the WAR file
    1. Download the WAR file
    2. Build the WAR file
  3. Install Docker
  4. Run Docker
  5. [Recommended] Enabling HTTPS
  6. [Optional] Define auth credentials
    1. [Advanced] Adding multiple users
  7. [Optional] Mount volume
  8. Running JPedal from different language clients

Launching JPedal

JPedal has a Docker image available, called idrsolutions/jpedal, to make it easier to get started. Using this Docker image you can start a container that can use JPedal to perform conversions using a simple REST API.

You can use this image from a cloud platform or server that has Docker installed. See below for instructions for using the Docker image on your own server/infrastructure.

Download or Build the WAR file

Before getting started you need the WAR file which you can either download or build yourself.
This WAR file is required for the JPedal service to work.

Download the WAR file

For trial users:

  1. If you haven’t already, sign up for JPedal trial.
  2. Open the email you receive when you signed up.
  3. Follow the download link found in the Docker section.

For customers:

  1. Visit the Customer download page.
  2. Click on ‘Download Latest Customer WAR’.
  3. Submit your username and password.

Build the WAR file

Build a copy of our JPedal Microservice Example project.
Instructions can be found on the GitHub page.

Install Docker

There are many tutorials detailing how to install docker ready for use. This tutorial to Install Docker will cover everything you need.

Run Docker

 docker run -p 80:80 --mount "source=/path/to/war/jpedal-microservice.war,target=/usr/local/tomcat/webapps/ROOT.war,type=bind" idrsolutions/jpedal

For production use, we strongly recommend enabling HTTPS encryption. The container is pre-configured to switch to HTTPS if it finds an SSL certificate, private key and certificate chain in the /opt/ssl/ directory. All you need to do is mount a directory containing files called certificate.crt, private.key and ca_bundle.crt. by adding the following to the above commands:

 -p 443:443 --mount "source=/local/path/to/ssl/directory,target=/opt/ssl,type=bind,readonly"

[Optional] Define auth credentials

If you wish to set a username and password for the service, you can do so by providing the following additional environment variables:

 --env ACCESS_USERNAME=<username> --env ACCESS_PASSWORD=<password>

[Advanced] Adding multiple users

If you need more than one user, you can provide your own tomcat-users.xml file and mount it at /usr/local/tomcat/conf/tomcat-users.xml

[Optional] Mount volume

If you need to access the converted files from the host machine without using the API you need two additional steps.

First create a folder for the output to be stored in.

mkdir -p /path/to/docroot/output

Second add a mount to the docker command, mounting the new directory to the containers directory.

 --mount "source=/path/to/docroot,target=/usr/local/docroot,type=bind"

Running JPedal from different language clients

Now that you have the docker server running you can follow the tutorials for using the API to begin your conversions.

Still need help? Send us your questions.