Open the server Apps tab
Select the tutorial-vps VPS, open the Apps tab, and start a new app deployment. Keep sensitive server details hidden before capturing or sharing screenshots.


Full-featured mail server with webmail
Add your server credentials to Server Compass
Choose from our template library
Fill in settings and click Deploy
Use the Mailu template in Server Compass to deploy the Mailu admin UI, webmail, SMTP, IMAP, antispam, Redis, and Unbound resolver stack on a VPS.
Select the tutorial-vps VPS, open the Apps tab, and start a new app deployment. Keep sensitive server details hidden before capturing or sharing screenshots.

Click New App and choose the template deployment path so Server Compass can load the built-in catalog.

Use the template picker search to find Mailu in the Server Compass template catalog.

Choose the Mailu template. Server Compass fills the generated Mailu stack, high tutorial ports, persistent volumes, and Unbound resolver settings.

Confirm the app name and service settings. In this run, the app was named mailu-demo; the admin UI was exposed on host port 4808.

Review the generated compose settings, confirm the Mailu service set and high tutorial ports, then click Deploy.

Keep the deployment modal open while Server Compass uploads the compose file, pulls the Mailu images, starts the containers, and verifies the stack.

After deployment finishes, return to the Apps tab and confirm the Mailu app is marked Running.

Open the public admin URL and confirm Mailu loads. For a real mail server, create the primary admin user and configure DNS before using the instance.

The Mailu admin interface loaded successfully in Chromium at http://91.99.15.247:4808/admin/.
It deploys the Mailu 2024.06 stack with nginx/front, admin, Dovecot, Postfix, Rspamd, SnappyMail webmail, Redis, and Unbound DNS resolver services.
The tutorial used host port 4808, mapped to the Mailu front service on container port 80.
No. The tutorial verifies that Mailu deploys and serves the admin UI. Real mail delivery still requires a real domain, DNS records, reverse DNS, TLS, and an initial admin user.
No. The deployment guide should live on the Mailu template detail page and be linked from the reusable template deployment docs page.
Prefer the command line? Follow this step-by-step guide to deploy Mailu manually on your VPS.
Open your terminal and connect to your server. Replace the IP address with your VPS IP.
# SSH into your server
ssh root@your-server-ip
# Using a custom SSH key
ssh -i ~/.ssh/id_rsa root@your-server-ipFirst time? Need Docker? Install it: curl -fsSL https://get.docker.com | sh
Set up a clean directory for your application.
# Create and navigate to project directory
mkdir -p ~/apps/mailu
cd ~/apps/mailuSet up the container stack using this Docker Compose configuration:
services:
front:
image: ghcr.io/mailu/nginx:2024.06
ports:
- "80:80"
- "443:443"
- "25:25"
- "143:143"
- "587:587"
environment:
- TZ=UTC
volumes:
- mailu_certs:/certs
- mailu_overrides:/overrides
restart: unless-stopped
depends_on:
- admin
- imap
- smtp
admin:
image: ghcr.io/mailu/admin:2024.06
environment:
- SECRET_KEY=<your-secret-key>
- DOMAIN=<your-domain>
- HOSTNAMES=<your-hostnames>
- TZ=UTC
volumes:
- mailu_data:/data
- mailu_dkim:/dkim
restart: unless-stopped
depends_on:
- redis
imap:
image: ghcr.io/mailu/dovecot:2024.06
environment:
- TZ=UTC
volumes:
- mailu_mail:/mail
- mailu_overrides:/overrides
restart: unless-stopped
smtp:
image: ghcr.io/mailu/postfix:2024.06
environment:
- TZ=UTC
volumes:
- mailu_overrides:/overrides
restart: unless-stopped
redis:
image: redis:7-alpine
volumes:
- mailu_redis:/data
restart: unless-stopped
volumes:
mailu_certs:
mailu_overrides:
mailu_data:
mailu_dkim:
mailu_mail:
mailu_redis:
PORTHTTP port(default: 80)HTTPS_PORTHTTPS port(default: 443)SMTP_PORTSMTP port(default: 25)IMAP_PORTIMAP port(default: 143)SUBMISSION_PORTSubmission port(default: 587)DOMAINMail domainLaunch your application stack in the background.
# Start the containers in detached mode
docker compose up -d
# Check if containers are running
docker compose ps
# View logs
docker compose logs -fConfigure your firewall to permit external connections.
# Allow the application port through firewall
sudo ufw allow 80/tcp
sudo ufw reload
# Access your app at:
# http://your-server-ip:80Deploy Mailu with a beautiful UI instead. No SSH, no YAML editing, no terminal commands. Just click, configure, and deploy in under 3 minutes.
After deploying Mailu with Server Compass, complete these steps to finish setup
Configure DNS records
Create admin account
Add mail domains
Need help? Check out our documentation for detailed guides.
Common questions about self-hosting Mailu
Simply download Server Compass, connect to your VPS, and select Mailu from the templates list. Fill in the required configuration and click Deploy. The entire process takes under 3 minutes.
Mailu requires a minimum of 2048MB RAM. We recommend a VPS with at least 4096MB RAM for optimal performance. Any modern Linux server with Docker support will work.
Yes! Server Compass provides volume mapping that allows you to import existing data. You can also use standard Mailu backup and restore procedures.
Server Compass makes updates easy. Simply click the Update button in your deployment dashboard, and the latest Mailu image will be pulled and deployed with zero downtime.
Mailu is open-source software. You only pay for your VPS hosting (typically $5-20/month) and optionally Server Compass ($29 one-time). No subscription fees or per-seat pricing.
Download Server Compass and deploy Mailu to your VPS in under 3 minutes. No Docker expertise required.
Download Server Compass