Quick Deploy
Go from zero to a fully working Cleanmails instance in under 10 minutes. No coding required — just a VPS and your license key.
What is a VPS?
A VPS (Virtual Private Server) is a computer that stays on 24/7 in a data center. Instead of running Cleanmails on your laptop, you run it on a VPS so it can handle thousands of emails while you sleep.
We recommend Contabo, Hetzner, or DigitalOcean. Choose a plan with at least 1GB RAM (4GB recommended) and Ubuntu 22.04 as the operating system.
Step-by-Step Setup
Get your VPS & connect via SSH
Purchase a VPS with Ubuntu 22.04. You'll receive an IP address and root password.
Windows users: Download Putty, enter your VPS IP, click Open, login as root.
Mac/Linux users: Open Terminal and run:
ssh root@YOUR_VPS_IPIn most terminals (Putty, etc.), you don't use Ctrl+V. Just right-click inside the terminal window to paste.
Point your domain to your VPS IP
Create an A record pointing your domain to your VPS IP address before running the installer. This is needed for SSL provisioning.
| Type | Name | Value |
|---|---|---|
| A | app (or @) | YOUR_VPS_IP |
Run the installer
Use the command generator below to create your personalized install command, then paste it into your terminal.
Installation Command Generator
Fill in your details to generate a one-click installation command with automatic SSL.
curl -sSL https://cleanmails.online/install.sh | bash -s -- --key {LICENSE_KEY} --domain {YOUR_DOMAIN}rDNS Configuration
Set your server's Reverse DNS (PTR) record to: {YOUR_DOMAIN}
The installer will:
- Run preflight checks (root, RAM, disk, port availability)
- Install Docker Engine and Docker Compose (if not present)
- Download the latest release from the Cleanmails S3 bucket
- Build Docker images (API, Worker, Frontend)
- Generate secure secrets (AES-256 encryption key, JWT secret, DB password)
- Configure Caddy reverse proxy with security headers
- Start the full stack (PostgreSQL, Redis, API, Worker, Frontend, Caddy)
- Auto-provision SSL certificate via Let's Encrypt
Point your domain
Create an A record pointing your domain to your VPS IP address:
| Type | Name | Value |
|---|---|---|
| A | app (or @) | YOUR_VPS_IP |
Set Reverse DNS (rDNS/PTR)
Go to your VPS provider's control panel and set the PTR record to your domain. This is critical for email deliverability.
Complete the setup wizard
Open your domain in a browser. You'll see the initialization page where you create your admin account.
There is no "Forgot Password" button because your data is private and self-hosted. Write down your admin credentials.