App Store template
BillionMail icon

BillionMail

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

Launch in your Sealos workspace.

BillionMail template preview
Template previewFull screenshot
Template deployments
15 on Sealos
Deployment
Your own instance
Category
Tools

About this template

Overview

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.

From the documentation

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.

How to deploy BillionMail

  1. Choose Deploy now to start BillionMail in your Sealos workspace.
  2. Review admin_username, admin_password, mail_hostname and the remaining settings in the deployment form.
  3. Launch the template, then inspect the application status and resource cards in Canvas.

Resources to plan for

Start with the resources defined by the BillionMail template. Review CPU, memory, persistent storage, and network allocations for every service in Canvas. Capacity needs depend on your data and workload; monitor usage as they grow.

Template configuration and setup

Access after deployment

Use the application URL or connection details shown in Canvas. Follow the deployment guide for first-time account setup or client configuration, and keep generated credentials available for that step.

Hosting and billing

Sealos monthly plans include compute, memory, storage, and traffic. Size your plan for all deployed services. Software licenses and external AI or API services may have separate terms and charges. Confirm the applicable plan and optional charges in Cost Center.

Compare Sealos resource plans
Read full documentationCollapse documentation

For current cloud charges, refer to Sealos plan pricing. Upstream documentation may reference earlier billing models.

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.

From launch to everyday operations

Why deploy
on Sealos

A shorter path from an app you want to an app you can run. Sealos brings deployment and ongoing operations into one place.

  1. One-click deployment

    Start with a ready-made template. Review its configuration and launch from the Sealos console.

  2. Managed Kubernetes

    Run on managed infrastructure with built-in workload scheduling and recovery.

  3. Automatic HTTPS

    Give your application a public HTTPS endpoint with certificates managed for you.

  4. Persistent storage

    Keep application data on persistent volumes across container restarts.

  5. Room to grow

    Adjust CPU, memory, and replicas from the console as your workload changes.

One template. Connected resources.

You Get the Whole Stack

Sealos provisions the resources defined by your template and brings them together in your workspace.

  • App Service

    Container workloads with configurable CPU, memory, and replicas.

  • Public HTTPS URL

    An address for your app, with managed TLS certificates.

  • Database

    A database provisioned alongside your app when the template calls for one.

  • Persistent Volume

    Storage for the files and data your application needs to keep.

  • Environment Variables

    Application settings and secrets configured in one place.

  • Logs & Metrics

    Inspect container logs and resource usage from the console.

Resources and their configuration vary by template. Review the deployment form for this app’s exact setup.

Explore more production-ready templates.

More