DocuSeal is an open-source, self-hosted alternative to DocuSign and PandaDoc. If you’ve ever wanted to digitally sign a document with your own terms, DocuSeal does a great job. It is freely available to download and install on your server or system. In this article, I will guide you on the installation of DocuSeal, a self-hosted doc signing app, on your server using Docker Compose.
Some of the key features of DocuSeal are:
- PDF Form Builder
- Multiple Submitters
- Automated Emails
- Automatic eSignature
- Users Management
- Robust File Storage
Before we run the Docker Compose file to start the DocuSeal container, we will need to install a few required libraries and packages. I assume you are using Ubuntu.
apt update && apt upgrade
Uninstall the following packages if they are present:
apt remove docker.io docker-compose docker-doc podman-docker
We will use the script provided by the Docker website, which will install the latest Docker version. However, if you want to install it manually or upgrade it, check its documentation.
Please note, “the script isn’t designed to upgrade an existing Docker installation”.
Run the following commands with root or sudo privileges to install Docker.
apt install curl curl -fsSL https://get.docker.com -o get-docker.sh sh get-docker.sh
This will install all the dependencies, including docker-compose. However, if for some reasons, the compose plugin may not be installed. In such a case, install it with
apt install docker-compose-plugin.
The installation is very straightforward and easy. There are a few methods to follow: without docker, with docker, and with docker-compose. We will follow docker-compose as this is the easiest of all.
Before installation, check if these steps have been completed:
- Point the server IP to your domain or sub domain and make sure it is propagated
We are all set now to download and run the Docker Compose file.
curl https://raw.githubusercontent.com/docusealco/docuseal/master/docker-compose.yml > docker-compose.yml
If you are curious to know what is inside the Compose file, use
In the following command, change DOMAIN.COM to your actual domain name.
HOST=DOMAIN.COM docker-compose up
Once the process complete, you will have a running DocuSeal instance running at your domain.