Sign inSign up

teammust/signstash

By teammust

•Updated 7 months ago

Sign'Stash Proxy Images

Security
Integration & delivery
API management
0

171

teammust/signstash repository overview

⁠SignStash Proxy

⁠Overview

SignStash Proxy is an on-premise component that enables digital signature operations using only the document hash, eliminating the need to send the document content to the SignStash SaaS environment.

This approach enhances security and data privacy, ensuring that sensitive document content never leaves the client’s infrastructure.

In addition to generating document hashes, the component acts as a proxy by forwarding signature requests to the Integration Service. Client applications integrated with this solution communicate exclusively with the SignStash Proxy instead of directly interacting with the Integration Service.

For more details about architecture, configuration, and customization, please refer to the official documentation⁠.


⁠Pull the Image

To download a particular image, or set of images (i.e., a repository), use docker image pull (or the docker pull shorthand).

Available image:

docker pull teammust/signstash:<tag>

⁠How to Run with Docker

⁠Quick Start
docker run -d \
  --mount source=vol[UID],target=/tmp \
  -p [PORT]:8080 \
  --memory=[MEMORY] \
  [IMAGE_ID] \
  --einvoice-integration-client.service.domain=[SAAS_DOMAIN]

⁠Optional Parameters
--mount type=bind,source=[PATH_TO_WORK_FOLDER],target=/home \
--server.host.port=[HOST]:[PORT] \
--hot.folder.enabled=[HT_ENABLED] \
--einvoice-integration-client.hot.folder.documents.processing.threshold=[DOC_THRESHOLD] \
--einvoice-integration-client.scheduler.task.handleSignatureTasks.lock-time=[LOCK_TIME] \
--einvoice-integration-client.scheduler.task.processHotFoldersByDocumentThreshold.cron-expression=[DOC_THRESHOLD_FREQUENCY] \
--force.database.recreate=[DB_RECREATE]

⁠Customization Arguments
ParameterDescription
[UID]Volume identifier to attach to the container
[PATH_TO_WORK_FOLDER]Path to the working folder containing configuration files (e.g. /path/to/config.json)
[HOST]Host address (e.g. 127.0.0.1, optional)
[PORT]Exposed port (e.g. 8085)
[MEMORY]Maximum memory allocated to the container (e.g. 4g)
[IMAGE_ID]Docker image ID or name (e.g. teammust/signstash:<tag>)
[SAAS_DOMAIN]SignStash SaaS domain (e.g. https://staging.must.digital/)
[HT_ENABLED]Enables Hot Folder mode (TRUE or FALSE, optional)
[DOC_THRESHOLD]Minimum number of files required to trigger processing (optional)
[LOCK_TIME]Lock duration (in days) for signature processing tasks (optional)
[DOC_THRESHOLD_FREQUENCY]Cron expression to check input folder (e.g. 0 0/5 * * * ?)
[DB_RECREATE]Force database recreation (TRUE or FALSE, optional)

⁠Using an .env File

Set of all control variables using an .env file:

docker run --env-file ./env.list -d -p 8080:8080 --memory="4g" CONTAINER_ID

⁠Operating Modes

The SignStash Proxy supports three operating modes:

⁠1. Synchronous Mode

Signed documents are returned immediately in response to a signature request.


⁠2. Asynchronous Mode

The signing process occurs in two steps:

  1. A signature request is submitted → returns a unique operation ID and status
  2. The operation status is queried → once completed, signed documents can be retrieved

⁠3. Hot-Folder Mode

An extension of asynchronous mode where documents are automatically processed from configured input folders.


⁠Mode Activation

ModeRequired Parameters
SynchronousNo additional parameters
Asynchronous--server.host.port
Hot-Folder--server.host.port + --hot.folder.enabled=true

⁠Examples

⁠Synchronous Mode
docker run --env-file ./env.list -d -p 8086:8080 --memory="4g" CONTAINER_ID
docker run \
  --mount source=vol1,target=/tmp \
  -p 8086:8080 \
  --memory="4g" \
  teammust/signstash:<tag> \
  --einvoice-integration-client.service.domain=https://staging.must.digital

/tmp is the directory inside the container where the volume is mounted.


⁠Asynchronous Mode
docker run -d \
  --mount source=vol1,target=/tmp \
  --mount type=bind,source=/path/to/hot_folder,target=/home \
  -p 8086:8080 \
  --memory=4g \
  teammust/signstash:<tag> \
  --server.host.port=127.0.0.1:8086 \
  --einvoice-integration-client.service.domain=https://staging.must.digital/

⁠Hot-Folder Mode
docker run -d \
  --mount source=vol1,target=/tmp \
  --mount type=bind,source=/path/to/hot_folder,target=/home \
  -p 8086:8080 \
  --memory=4g \
  teammust/signstash:<tag> \
  --server.host.port=127.0.0.1:8086 \
  --hot.folder.enabled=true

Tag Summary

No tags have been pushed to this repository yet.