Docker Deployment
To deploy the solution using Docker images, you will require a compatible engine, for example Docker Desktop (specifically Docker Engine), Rancher or Podman.
Deployment
Deploy vanilla image
eSign Server’s vanilla image creates a container using a in-memory H2 database and all default configurations.
The vanilla image of eSign Server is used exclusively for testing purposes and should never be deployed on real environments. |
To deploy a vanilla eSign Server container execute the following command:
This is a base example, values of environment variables need to be changed to match your use case. |
docker run \
--name esign-server \ (1)
--rm \ (2)
-it \ (3)
-d \ (4)
-p 8080:8080 \ (5)
-e ESIGN_SERVER_DB_DIALECT=org.hibernate.dialect.PostgreSQLDialect \ (6)
-e ESIGN_SERVER_DB_DRIVER=org.postgresql.Driver \ (7)
-e ESIGN_SERVER_DB_URL=jdbc:postgresql://your_database:5432/esign \ (8)
-e ESIGN_SERVER_DB_USER=esign \ (9)
-e ESIGN_SERVER_DB_PASSWORD=esign \ (10)
esigncelfocus.azurecr.io/esignserver:<VERSION> (11)
1 | Container name |
2 | Remove containers on kill (instead of manually doing docker rm esign-server) |
3 | Enable input, tty |
4 | Detach container and run (you can follow the start up process using docker logs -f esign-server) |
5 | Expose port 8080 of the container as port 8080 in the host (this is the port where the instance will be available) |
6 | Configure the ESIGN_SERVER_DB_DIALECT environment variable, which determines the dialect used to communicate with the database |
7 | Configure the ESIGN_SERVER_DB_DRIVER environment variable, which determines the JDBC driver used to connect to the database (ex: org.postgresql.Driver) |
8 | Configure the ESIGN_SERVER_DB_URL environment variable, which determines the JDBC connection to access the database |
9 | Configure the ESIGN_SERVER_DB_USER environment variable, which determines the user used to connect to the database |
10 | Configure the ESIGN_SERVER_DB_PASSWORD environment variable, which determines the password used to connect to the database |
11 | Container image to run (must replace <VERSION> with the actual version you which to run) |
Deploy Custom image
eSign Server image was designed to be extended with custom layers. In these layers you will be able to (among other) customize:
-
Branding
-
Security settings
-
Custom extension points
To deploy a previously created eSign Server custom image execute the following command:
This is a base example, values of environment variables need to be changed to match your use case. |
docker run \
--name esign-server \ (1)
--rm \ (2)
-it \ (3)
-d \ (4)
-p 8080:8080 \ (5)
-e ESIGN_SERVER_DB_DIALECT=org.hibernate.dialect.PostgreSQLDialect \ (6)
-e ESIGN_SERVER_DB_DRIVER=org.postgresql.Driver \ (7)
-e ESIGN_SERVER_DB_URL=jdbc:postgresql://your_database:5432/esign \ (8)
-e ESIGN_SERVER_DB_USER=esign \ (9)
-e ESIGN_SERVER_DB_PASSWORD=esign \ (10)
<YOUR_CUSTOM_IMAGE>:<YOUR_VERSION> (11)
1 | Container name |
2 | Remove containers on kill (instead of manually doing docker rm esign-server) |
3 | Enable input, tty |
4 | Detach container and run (you can follow the start up process using docker logs -f esign-server) |
5 | Expose port 8080 of the container as port 8080 in the host (this is the port where the instance will be available) |
6 | Configure the ESIGN_SERVER_DB_DIALECT environment variable, which determines the dialect used to communicate with the database |
7 | Configure the ESIGN_SERVER_DB_DRIVER environment variable, which determines the JDBC driver used to connect to the database (ex: org.postgresql.Driver) |
8 | Configure the ESIGN_SERVER_DB_URL environment variable, which determines the JDBC connection to access the database |
9 | Configure the ESIGN_SERVER_DB_USER environment variable, which determines the user used to connect to the database |
10 | Configure the ESIGN_SERVER_DB_PASSWORD environment variable, which determines the password used to connect to the database |
11 | Container image to run (must replace <VERSION> with the actual version you which to run) |
Test Instance
The running instance will be available at: http://localhost:8080/eSignServer