Current Version: 0.1.0
- Single server, multiple domains.
- Tenant context is resolved from incoming
Host/domain. - The dashboard now has tenant context extension points for branding and runtime config hooks (
window.__MMAIL_TENANT_CONFIG__andwindow.__MMAIL_TENANT_RESOLVER__). - Requests include tenant metadata headers (
X-Tenant-Domain,X-Tenant-Id) for downstream isolation controls.
- Domain-keyed reverse proxy implemented in stable Rust.
- Supports HTTP by default and optional HTTPS (set
MMAIL_PROXY_TLS_CERT+MMAIL_PROXY_TLS_KEY). - Tenant-aware routing:
- resolves tenant by domain/host,
- supports per-tenant backend and route-prefix overrides,
- injects tenant headers for downstream services,
- logs host/tenant/backend/status context for each proxied request.
- Config sources:
- file:
rust-proxy/config/proxy.toml(default), - env override:
MMAIL_PROXY_CONFIG, - server/env overrides:
MMAIL_PROXY_BIND,MMAIL_PROXY_MODE,MMAIL_PROXY_DEFAULT_BACKEND,MMAIL_PROXY_LOG_LEVEL,MMAIL_PROXY_TIMEOUT_SECS,MMAIL_PROXY_TRUST_X_FORWARDED_HOST,MMAIL_PROXY_TLS_CERT,MMAIL_PROXY_TLS_KEY.
- file:
# show help
./scripts/manage.sh --help
# clean artifacts
./scripts/manage.sh clean
# build (default dev) or release
./scripts/manage.sh build
./scripts/manage.sh build release
# run modes
./scripts/manage.sh run dev
./scripts/manage.sh run prod
./scripts/manage.sh run proxy-dev
./scripts/manage.sh run proxy-prod
./scripts/manage.sh run web-dev
# release build
./scripts/manage.sh release
# semantic versioning
./scripts/manage.sh version bump
./scripts/manage.sh version minor
./scripts/manage.sh version majormanage.sh prefers pnpm for Node-based tasks and falls back to npm only when pnpm is unavailable.
Please consider a support contract with Servercow to support further development. We support you while you support us. :)
You can also get a SAL which is a one-time payment with no liabilities or returning fees.
Or just spread the word: moo.
A big thank you to everyone supporting us on GitHub Sponsors—your contributions mean the world to us! Special thanks to the following amazing supporters:
Please see the official documentation for installation and support instructions. 🐄
🐛 If you found a critical security issue, please mail us to info at servercow.de.
Telegram maimail Off-Topic channel
Telegram desktop clients are available for multiple platforms. You can search the groups history for keywords.
Important: maimail makes use of various open-source software. Please assure you agree with their license before using maimail. Any part of maimail itself is released under GNU General Public License, Version 3.
maimail is a registered word mark of The Infrastructure Company GmbH, Parkstr. 42, 47877 Willich, Germany.
The project is managed and maintained by The Infrastructure Company GmbH.
Originated from @andryyy (André)