Communityoplossing

Mailpit installeren op CasaOS met officiële Docker-instellingen

A 2023 BigBearCasaOS tutorial introduced Mailpit; current upstream docs now define the preferred Docker image, ports, persistence, and security options.

Installeer Mailpit op CasaOS met de officiële axllent/mailpit-Dockerimage, poort 8025 voor de webinbox en poort 1025 voor SMTP. Maak /data alleen persistent als je wilt dat berichten en instellingen behouden blijven wanneer de container opnieuw wordt aangemaakt.

De oude BigBearCasaOS-handleiding is nog steeds nuttig als voorbeeld voor installatie met één klik, maar de huidige Mailpit-documentatie van de upstreamontwikkelaars bevat inmiddels de exacte Dockerimage, de optie voor een persistente database, authenticatieopties en TLS-/relay-instellingen. Die moeten de basis vormen voor de handleiding van 2026.

Waarvoor Mailpit bedoeld is

Mailpit is een lokale SMTP-testserver voor ontwikkelaars. Applicaties sturen testmails naar Mailpit in plaats van naar een echte mailprovider, waarna je de berichten in een browser kunt bekijken.

Het is geen normale productie-inbox en ook geen mailserver die aan internet moet worden blootgesteld.

Gebruik de officiële Dockerimage

De huidige Mailpit-Dockergids vermeldt:

axllent/mailpit

Poorttoewijzing voor CasaOS

  • 8025/TCP: Mailpit-webinterface
  • 1025/TCP: SMTP-ontvanger

Als een andere service al een van deze hostpoorten gebruikt, wijzig je de poort aan de hostzijde en laat je de poort aan de containerzijde ongewijzigd.

Basisinstellingen voor een aangepaste CasaOS-app

image: axllent/mailpit
restart: unless-stopped
ports:
  - "8025:8025"
  - "1025:1025"

Open na het opstarten http://CASAOS-IP:8025.

Laat je applicatie Mailpit gebruiken

Gebruik voor een andere container op hetzelfde Docker-netwerk de naam van de Mailpit-service of -container en poort 1025. Gebruik voor een applicatie op het LAN het IP-adres van de CasaOS-host en de gepubliceerde SMTP-hostpoort.

Maak berichten alleen persistent als dat nodig is

De huidige Mailpit-documentatie ondersteunt een SQLite-database onder /data met:

MP_DATABASE=/data/mailpit.db

Koppel een CasaOS-AppData-map aan /data als je wilt dat de berichtgeschiedenis behouden blijft wanneer de container wordt vervangen.

Houd Mailpit privé

Een testinbox kan links voor wachtwoordresets, API-meldingen en applicatiegegevens bevatten. Stel de webinterface of een SMTP-listener zonder authenticatie niet rechtstreeks bloot aan internet.

De huidige Mailpit-configuratiehandleiding beschrijft HTTP-, SMTP- en POP3-authenticatie en TLS-opties.

Wanneer je poort 1025 niet hoeft te publiceren

Als alleen containers op hetzelfde Compose-netwerk mail naar Mailpit sturen, kun je het publiceren van de SMTP-hostpoort weglaten en deze intern binnen Docker houden.

De Docker-netwerkgids legt hetzelfde isolatiemodel uit.

Test het SMTP-pad voordat je het aan je app koppelt

Controleer nadat Mailpit is gestart of de webinterface opent en stuur vervolgens één testbericht vanuit een eenvoudige SMTP-client of je applicatie. Als het bericht direct in de Mailpit-inbox verschijnt, werken zowel het netwerkpad als de SMTP-listener.

Als de applicatie de foutmelding ‘connection refused’ geeft, controleer dan of de juiste hostnaam wordt gebruikt vanuit de eigen netwerkcontext. Een container gebruikt doorgaans de servicenaam van Mailpit; een laptop op het LAN gebruikt het IP-adres van de CasaOS-host.

Gebruik alleen authenticatie als je test dat vereist

Mailpit kan voor eenvoudige lokale ontwikkeling SMTP zonder authenticatie accepteren, maar de huidige configuratieopties ondersteunen ook SMTP-authenticatie en authenticatie voor de gebruikersinterface. Schakel die in wanneer meerdere gebruikers het lab delen of wanneer de service bereikbaar is buiten één vertrouwd Docker-netwerk.

Houd testmail gescheiden van productiemail

Mailpit is ontworpen om berichten op te vangen, zodat ze niet per ongeluk echte gebruikers bereiken. Configureer ontwikkel- en stagingapplicaties expliciet voor Mailpit en bewaar productie-SMTP-inloggegevens in een aparte configuratie. Zo voorkom je dat een testmail voor het opnieuw instellen van een wachtwoord of een stortvloed aan meldingen klanten bereikt.

Stel een berichtlimiet in voor labs die lang blijven draaien

Mailpit kan duizenden berichten bewaren. Stel in een continu draaiende CI- of homelabomgeving een verstandige maximumlimiet in en maak alleen persistent wat je echt nodig hebt. Anders kan een kleine testtool langzaam uitgroeien tot nog een database die je moet onderhouden.

Veelgestelde vragen

Wat zijn de standaardpoorten van Mailpit?

8025 voor de webinterface en 1025 voor SMTP.

Verstuurt Mailpit echte e-mails?

De belangrijkste functie is het lokaal opvangen van testmail. Mailpit kan worden geconfigureerd voor doorsturen of relaying, maar dat vereist een afzonderlijke, expliciete configuratie.

Heb ik een database nodig?

Nee, niet voor tijdelijke tests. Gebruik de SQLite-databaseoptie als je een persistente berichtgeschiedenis wilt.

Moet ik Mailpit publiekelijk toegankelijk maken?

Nee. Houd het binnen een vertrouwd netwerk of beveilig het met authenticatie en TLS.