Installation
OwnMaily installs via a single command. The script installs Docker if needed, downloads the Docker Compose configuration, and starts the stack. The whole process takes a few minutes.
Run the install script
SSH into your server and run:
curl -fsSL https://ownmaily.com/install.sh | bash The script will walk you through a short setup. Follow the prompts.
Enter your installation URL
The first thing the script asks for is your Installation URL. This is the
public address where your OwnMaily instance will be reachable - for example,
https://mail.yourdomain.com.
This URL is baked into your configuration and used to generate links in emails. Getting it right matters. See What is the Installation URL? for a full explanation and guidance for your specific situation.
Wait for the stack to start
After you confirm the URL, the script pulls the Docker images and starts the containers. This usually takes 1-2 minutes on a fresh server, longer on a slow connection. You will see log output as the containers initialize.
When the stack is ready, the script prints the URL where OwnMaily is running. You should also see a health check confirmation.
Open the app in your browser
Navigate to your Installation URL in a browser. You should see the OwnMaily setup wizard. If the page does not load, wait 30 seconds and try again - the app container may still be initializing.
If it still does not load, run docker logs ownmaily-app-1 to see what is happening.
See Troubleshooting for common issues.
Complete the setup wizard
The setup wizard has four steps:
- Create your account. Set your name, email address, and a password. This is the only account on the instance - OwnMaily is single-user.
- Set your sender details. Enter your from name (e.g., "Jordan from OwnMaily") and the from email address you want to send from. This should match the domain you verified with your SMTP provider.
- Connect your SMTP provider. Select your provider (Resend, Mailgun, or SES), paste your API key, and send a test email to confirm it is working.
- Import your list or create a signup form. You can import a CSV, add subscribers manually, or generate an embed snippet to add to your website.
You can skip SMTP during setup and configure it later in Settings. If you are just exploring the app or your domain is not fully set up yet, skip this step and come back to it. You will not be able to send emails until SMTP is configured, but everything else in the app will work.
You are in
After completing the wizard, you land on the OwnMaily dashboard. From here you can import subscribers, create campaigns, and configure your settings.
If you are setting up for production use, continue to the Production Checklist to make sure everything is properly configured before you start sending.