Breadcrumbs

Installation as a Docker container

signoSign/Universal can also be used in a Docker container. Since the application currently has many dependencies on the underlying server (e.g. user management, TLS settings, etc.), signotec does not currently provide a ’ready-made’ Docker image. However, you can create a Docker image yourself in just a few steps. The following sections explain, by way of example, how you can install signoSign/Universal on a Docker image with a Tomcat.

Resources required

To operate signoSign/Universal in a Docker container, you need the following resources:

  • A system with Docker installed (Docker host)

  • signoSignUniversal.war

  • tomcat-users.xml with users and roles for signoSign/Universal

Configure user

Before you can get started with the image, you need a ’tomcat-users.xml’ with users and roles for the use of signoSign/Universal.

The content could look like this, for example:

XML
<?xml version="1.0" encoding="UTF-8"?>
<tomcat-users xmlns="http://tomcat.apache.org/xml"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd"
              version="1.0">
  <role rolename="ssu-user"/>
  <role rolename="ssu-admin"/>
  <user username="user" password="password" roles="ssu-user"/>
  <user username="admin" password="admin" roles="ssu-admin"/>
</tomcat-users>

This configuration contains a user ’user’ with the password ’password’ and an administrator ’admin’ with the password ’admin.’

As an alternative to configuration via ’tomcat-users.xml,’ you can also connect your own user database or configure Single Sign On. The user configuration used here is purely an example.

Create image

To operate in a Docker container, you need a Docker image.

Preparation

First create a new folder and copy the created ’tomcat-users.xml’ and the ’signoSignUniversal.war’ from the download package into this folder.

Create Dockerfile

Create a Dockerfile with the following content:

Docker
FROM tomcat:11-jdk21-temurin
COPY tomcat-users.xml /usr/local/tomcat/conf/
COPY signoSignUniversal.war /usr/local/tomcat/webapps/

In this example, a Tomcat 9.0 image from the Docker Hub is used as a starting point and the ’tomcat-users.xml’ and the ’signoSignUniversal.war’ are copied from the folder into the image.

Build image

Once you have prepared the files, you can create the image. To do this, open a console (cmd or Powershell) and navigate to the created project folder. Execute the following command there to build the image with the name ’signoSignUniversal.’

PowerShell
docker build -t signoSignUniversal .

Execute image

You can now run the image you have created as a container.

PowerShell
docker run -d -p 80:8080 signoSignUniversal

The command starts a container with the created image and maps port 80 to 8080.

Using the database as a volume

If you want to use the H2 database in the long term, you can move the folder with the database to a volume. To do this, start the container with the following command, for example:

PowerShell
docker run -d -p 80:8080 -v h2db:/usr/local/tomcat/SSU_DB signoSignUniversal

Call application

After the container has started up, you can call the application via the following URL:

http://<DOMAIN>/signoSignUniversal/pool/

If you use Docker locally, this would be, for example:

http://localhost/signoSignUniversal/pool/