docs: add comparison section detailing advantages over upstream#21
Conversation
There was a problem hiding this comment.
Code Review
This pull request updates the README.md to include a comprehensive comparison table and a detailed breakdown of the advantages of docker-mailserver-gui over the standard docker-mailserver, highlighting features like SnappyMail integration and automated SSL/TLS synchronization. A review comment identified a typo in the documentation regarding the supported Docker version and provided a suggestion to correct it.
| 1. **DB-less, High-Performance Webmail (SnappyMail):** Unlike heavy webmail clients (e.g. SOGo, Roundcube) that require Postgres/MySQL and extensive CPU/RAM overhead, our stack integrates **SnappyMail**. It runs entirely without a database, saving system memory while delivering a lightning-fast, modern SPA web interface. | ||
| 2. **Automated SSL/TLS Certificate Synchronization:** Upstream DMS leaves SSL configuration to the user. In our stack, `dms-cert-dumper` monitors the reverse proxy's `acme.json` file. When Let's Encrypt renews a certificate, the sidecar extracts it, updates the mail server directories, and safely reloads Postfix/Dovecot daemons in real-time with zero downtime. | ||
| 3. **True Container Isolation (Zero Trust):** Webmail clients are common targets for remote exploits. By separating the web server (`dms-traefik`), webmail engine (`dms-snappymail`), and mail delivery agent (`dms-core`), an exploit in the web client cannot compromise your mail storage or private key directories. | ||
| 4. **Hardened for Production Out-of-the-Box:** Includes built-in workarounds for modern Docker engines (Docker 29+ `DOCKER_API_VERSION` adjustments), instant inbound delivery configuration (bypassable greylisting), and GPG-signed release integrity. |
There was a problem hiding this comment.
The reference to 'Docker 29+' appears to be a typo. Given that DOCKER_API_VERSION=1.41 (which is configured in the compose.yml) was introduced with Docker Engine 20.10, you likely intended to specify 'Docker 20+' or 'Docker 24+'. Using '29+' might confuse users regarding the minimum supported version of the Docker engine.
| 4. **Hardened for Production Out-of-the-Box:** Includes built-in workarounds for modern Docker engines (Docker 29+ `DOCKER_API_VERSION` adjustments), instant inbound delivery configuration (bypassable greylisting), and GPG-signed release integrity. | |
| 4. **Hardened for Production Out-of-the-Box:** Includes built-in workarounds for modern Docker engines (Docker 20+ `DOCKER_API_VERSION` adjustments), instant inbound delivery configuration (bypassable greylisting), and GPG-signed release integrity. |
This PR adds a comparison table and a detailed section outlining the key benefits of docker-mailserver-gui over standard docker-mailserver (integrated webmail, automated ssl sync via cert-dumper, zero-trust container isolation, zero fallback credentials).