Back to templates
BillionMail icon

Deploy BillionMail on Sealos

Open-source mail server, newsletter, and email marketing platform for self-hosted campaigns.

Tools
Deploy BillionMail in a few clicks from the Sealos App Store.Run a self-hosted open-source service on Kubernetes-backed infrastructure.Get automatic HTTPS, routing, and resource management from Sealos.Avoid manual YAML while keeping control of the deployed workload.

Why deploy on Sealos

Sealos makes deploying any app effortless, secure, and production-ready. From one-click launch to ongoing operations, we handle the heavy lifting so you can focus on what matters.

One-Click Deploy
Sealos logo
Compute
Networking
Storage
Security
Observability
Your Application is Live

One-Click Deployment

Deploy any app template in seconds. No compose setup, manual configure, and go live.

Managed Kubernetes Reliability

Built on Sealos Managed Kubernetes for high availability, auto-scaling, and self-healing by default.

Automatic HTTPS & Security

Every deployment includes a secure domain with automatic SSL. We handle certificates and text protection for you.

Persistent Storage

Attach persistent volumes with ease. Your data stays safe, durable, and always accessible.

Scale when needed

Adjust resources as your app grows, no downtime required.

You Get the Whole Stack

Sealos provisions and connects every resource your application needs. Everything is ready to use.

One-click, fully provisionedSecure by defaultProduction ready

App Service

Your application is running and ready to serve requests.

Public HTTPS URL

Secure, global endpoint to access your application.

Database

Managed database instance for your application.

Persistent Volume

Durable storage for uploads and application data.

Environment Variables

Configuration and secrets injected securely into your app.

Logs & Metrics

Centralized logs and basic metrics are enabled.

README

README.md

Deploy and Host BillionMail on Sealos

BillionMail is an open-source mail server, newsletter, and email marketing platform. This template deploys the BillionMail web console, mail services, PostgreSQL, Redis, and persistent storage on Sealos Cloud.

BillionMail Screenshot

About Hosting BillionMail

BillionMail provides a self-hosted control plane for domains, mailboxes, campaign sending, newsletter operations, and mail service management. The Sealos template runs the official BillionMail service set with a public HTTPS web console and internal mail service coordination.

The deployment includes the BillionMail core web/API service, Postfix for SMTP, Dovecot for IMAP/POP3 mailbox access, Rspamd for anti-spam processing, and Roundcube webmail under /roundcube. Sealos also provisions KubeBlocks PostgreSQL, KubeBlocks Redis, persistent storage, service discovery, ingress, and TLS for the web console.

Common Use Cases

  • Self-hosted mail operations: Manage domains, mailboxes, and server-side mail settings from a web console.
  • Newsletter publishing: Run newsletter lists and campaign sending from your own infrastructure.
  • Email marketing workflows: Operate outbound campaigns while keeping data and configuration under your control.
  • Team mailbox administration: Create mailboxes, manage credentials, and provide webmail access with Roundcube.
  • Deliverability testing: Tune DNS, sending domains, and mail routing for controlled environments.

Dependencies for BillionMail Hosting

The Sealos template includes all required runtime dependencies: BillionMail Core, Postfix, Dovecot, Rspamd, Roundcube, PostgreSQL 16.4, Redis 7.2, and a persistent data volume.

Deployment Dependencies

Implementation Details

Architecture Components:

This template deploys the following services:

  • BillionMail Core: Main web console and API service exposed through the Sealos App URL.
  • Postfix: SMTP, SMTPS, and Submission service for mail sending.
  • Dovecot: IMAP, IMAPS, POP3, and POP3S service for mailbox access.
  • Rspamd: Anti-spam and mail filtering service.
  • Roundcube: Webmail interface served at /roundcube.
  • PostgreSQL: KubeBlocks PostgreSQL 16.4 cluster for BillionMail and webmail data.
  • Redis: KubeBlocks Redis 7.2 cluster for cache, sessions, and coordination.
  • Persistent Volume: Stores mail data, mutable configuration, TLS files, logs, webmail data, and mail service state.

Configuration:

  • The Sealos App URL opens BillionMail at the root path, for example https://<app-host>.<sealos-domain>.
  • The initial administrator account is created from the admin_username and admin_password deployment parameters.
  • mail_hostname is used by Postfix and DNS guidance, for example mail.example.com.
  • timezone configures container time, and retention_days controls BillionMail log backup retention.

License Information:

This Sealos template is provided under the templates repository license. Review the upstream BillionMail repository for the current application license terms before production use.

Why Deploy BillionMail on Sealos?

Sealos is an AI-assisted Cloud Operating System built on Kubernetes that unifies application deployment, operation, and resource management. By deploying BillionMail on Sealos, you get:

  • One-Click Deployment: Start the full BillionMail stack through a template-driven workflow.
  • Managed Cloud Resources: Use KubeBlocks PostgreSQL, KubeBlocks Redis, persistent storage, ingress, and TLS from one platform.
  • Canvas Operations: Adjust resources, inspect workloads, and update settings through Canvas, AI dialog, and resource cards after deployment.
  • Resource Efficiency: Run the stack with pay-as-you-go resources and tune CPU, memory, and storage as usage grows.
  • Kubernetes Foundation: Keep the deployment portable and observable, with routine changes handled through Sealos.

Deployment Guide

  1. Open the BillionMail template and click Deploy Now.
  2. Configure the deployment parameters in the popup dialog:
    • Admin Username: Initial BillionMail administrator username. The default is billion.
    • Admin Password: Initial BillionMail administrator password. Set a strong value before deployment.
    • Mail Hostname: Hostname used for mail service and DNS guidance, such as mail.example.com.
    • Timezone: Container timezone, such as Etc/UTC.
    • Retention Days: Number of days to keep BillionMail log backups.
  3. Wait for deployment to complete, typically 2-3 minutes. After deployment, Sealos redirects you to the Canvas. For later changes, describe your requirements in the AI dialog or click the relevant resource cards.
  4. Open the provided BillionMail App URL. The console is served at the root path, for example https://<app-host>.<sealos-domain>.
  5. Log in with the administrator username and password configured in step 2. The initial administrator account is created during deployment, and first access uses these deployment credentials directly.
  6. After logging in, create mail domains and mailboxes before using mail delivery or Roundcube webmail.

First Login and Webmail

Use the administrator username and password from the deployment parameters on the BillionMail login page. Keep the password in your own password manager because the template input is the source of the initial administrator credential.

Roundcube webmail is available at:

https://<app-host>.<sealos-domain>/roundcube

Create a domain and mailbox in the BillionMail console before signing in to Roundcube.

Mail DNS and Ports

BillionMail exposes mail services inside Kubernetes for SMTP, SMTPS, Submission, IMAP, IMAPS, POP3, and POP3S. Public mail delivery also requires DNS and network planning:

  • Point MX records to the configured mail_hostname.
  • Configure SPF, DKIM, and DMARC records for each sending domain.
  • Confirm that the required SMTP and IMAP/POP ports are reachable from the networks where you send or receive mail.
  • Use Submission port 587 for authenticated sending when port 25 is restricted by your environment.

Scaling

For resource tuning, open the deployment Canvas and adjust CPU, memory, and storage on the relevant workload, database, or volume resource cards. Treat mail storage and delivery services as stateful components and validate mail flow after changing replicas or storage settings.

Troubleshooting

Admin Login Fails

  • Confirm that you are opening the root App URL from Sealos.
  • Use the admin_username and admin_password values configured during deployment.
  • Wait until the BillionMail workload, PostgreSQL cluster, Redis cluster, and initialization job are complete before retrying.

Mail Delivery Fails

  • Check MX, SPF, DKIM, and DMARC records for the sending domain.
  • Confirm that mail_hostname points to the intended mail host.
  • Review whether your cloud or network provider restricts SMTP port 25.

Webmail Login Fails

  • Create the domain and mailbox in BillionMail first.
  • Open Roundcube at /roundcube and use the mailbox credentials.

Additional Resources

License

This Sealos template is provided under the templates repository license. BillionMail is distributed by its upstream project; review the BillionMail GitHub repository for current license terms.

Related templates

Explore more production-ready templates.

More

Ready to Stop Configuring and
Start Creating?

Get started for free. No credit card required.

Play