Documenso

Quick Start

Get Documenso running locally in minutes with Docker Compose.

Limitations

This quick start setup is for local development and testing only:

  • No HTTPS (not suitable for production)
  • No email delivery (emails are logged to console)
  • Uses a local PostgreSQL database
  • No signing certificate configured (documents will be signed with a generated certificate)
  • Single-node setup (no high availability)

For production deployments, see Docker Compose Deployment.

Prerequisites

Verify your installation:

docker --version
docker compose version

Quick Start

Clone the repository

git clone https://github.com/documenso/documenso.git
cd documenso

Create the environment file

Copy the example environment file:

cp .env.example .env

The default values work for local development. No changes are required.

Start Documenso

docker compose -f docker/development/compose.yml up -d

This pulls the required images and starts the containers. The first run takes a few minutes.

Create Your First Account

Sign up

Click Sign Up on the login page and enter your email address and password.

Verify your email

In development mode, emails are logged to the console instead of being sent. Check the Docker logs for the verification link:

docker compose -f docker/development/compose.yml logs -f

Copy the verification link from the logs and open it in your browser.

Log in

Log in with your credentials.

Granting Admin Access

All accounts created through signup are regular user accounts. To grant admin access, update the user's role directly in the database:

docker compose -f docker/development/compose.yml exec database \
  psql -U documenso -d documenso -c "UPDATE \"User\" SET roles = '{ADMIN}' WHERE email = 'your@email.com';"

What's Included

The quick start setup runs the following containers:

ContainerPurposePort
documensoMain application3000
databasePostgreSQL database54320
maildevLocal email testing server2500
minioS3-compatible storage (optional)9000

Useful Commands

View logs:

docker compose -f docker/development/compose.yml logs -f

Stop containers:

docker compose -f docker/development/compose.yml down

Stop and remove all data:

docker compose -f docker/development/compose.yml down -v

Rebuild after changes:

docker compose -f docker/development/compose.yml up -d --build

Troubleshooting


See Also

On this page