ign8mail
Ignite a production-grade mail server in minutes.
What it does in one command:
- Generates an SSH keypair
- Provisions a Hetzner Cloud VPS via Pulumi
- Creates all required Cloudflare DNS records (A, MX, SPF, DKIM, DMARC, autoconfig)
- SSHs into the server and installs + configures Postfix, Dovecot, rspamd, and Let's Encrypt TLS
Install
pip install ign8mail
Quickstart
cp .env.example .env
# Fill in .env with your tokens and domain
ign8mail up \
--domain mail.example.com \
--admin-email admin@example.com \
--hetzner-token $HETZNER_TOKEN \
--cloudflare-token $CF_TOKEN \
--cloudflare-zone-id $CF_ZONE_ID
Or use environment variables (all flags have IGN8_ prefixed env var equivalents):
export IGN8_DOMAIN=mail.example.com
export IGN8_ADMIN_EMAIL=admin@example.com
export IGN8_HETZNER_TOKEN=...
export IGN8_CLOUDFLARE_TOKEN=...
export IGN8_CLOUDFLARE_ZONE_ID=...
ign8mail up
Teardown
ign8mail destroy
This removes the Hetzner server. DNS records are left intact.
Requirements
- Python 3.11+
- A Hetzner Cloud account and API token
- A domain managed by Cloudflare (API token + Zone ID)
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
ign8mail-2.3.0.tar.gz
(63.0 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
ign8mail-2.3.0-py3-none-any.whl
(74.5 kB
view details)
File details
Details for the file ign8mail-2.3.0.tar.gz.
File metadata
- Download URL: ign8mail-2.3.0.tar.gz
- Upload date:
- Size: 63.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
76968c70c8ff24a329f57fd18a7b85a253a539955c8b1fab504617b78c680b5e
|
|
| MD5 |
7816c8f914b59f88a7b86d65a5957ca1
|
|
| BLAKE2b-256 |
83fb01d5ff7b7c5b0786f182429daf9e9c09a8ed7a47efa18cd636c2e854340b
|
File details
Details for the file ign8mail-2.3.0-py3-none-any.whl.
File metadata
- Download URL: ign8mail-2.3.0-py3-none-any.whl
- Upload date:
- Size: 74.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
36ac8fff6503c262e770eda27a73eb31002fb530b2a6b8e0466c52d1c58ff19b
|
|
| MD5 |
44eaecfe51069a9e37f6911a768e4a28
|
|
| BLAKE2b-256 |
5e237b1bed6ad704d591ea1eef408d9485ee96b514bcb6e203abb862263d69c3
|