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
- Docker installed and running
- Docker Compose v2.0 or later
- At least 2GB of available RAM
Verify your installation:
docker --version
docker compose versionQuick Start
Clone the repository
git clone https://github.com/documenso/documenso.git
cd documensoCreate the environment file
Copy the example environment file:
cp .env.example .envThe default values work for local development. No changes are required.
Start Documenso
docker compose -f docker/development/compose.yml up -dThis pulls the required images and starts the containers. The first run takes a few minutes.
Access the application
Open http://localhost:3000 in your browser.
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 -fCopy 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:
| Container | Purpose | Port |
|---|---|---|
documenso | Main application | 3000 |
database | PostgreSQL database | 54320 |
maildev | Local email testing server | 2500 |
minio | S3-compatible storage (optional) | 9000 |
Useful Commands
View logs:
docker compose -f docker/development/compose.yml logs -fStop containers:
docker compose -f docker/development/compose.yml downStop and remove all data:
docker compose -f docker/development/compose.yml down -vRebuild after changes:
docker compose -f docker/development/compose.yml up -d --buildTroubleshooting
See Also
- Docker Compose Deployment - Production setup with PostgreSQL and email
- Environment Variables - Configure all available options
- Signing Certificate - Set up document signing
- Email Configuration - Configure SMTP for production