Ich verwende Alpine Linux in einem Docker-Container, um eine Webanwendung auszuführen. Die Webanwendung soll E-Mails mit dem Mail-Befehl von der Befehlszeile aus versenden.
Um dies zu unterstützen, habe ich Mail wie folgt installiert:
apk add mailx
Beim Versuch, eine Nachricht zu senden, erhalte ich die folgende Fehlermeldung:
bash-4.3# mail [email protected]
Subject: test
EOT
Null message body; hope that's ok
bash-4.3# send-mail: applet not found
Ich bin mir nicht sicher, was ich falsch mache. Für jede Hilfe bin ich sehr dankbar.
Antwort1
In Alpine ist kein Standard-MTA verfügbar. Neben mailx müssen Sie auch einen MTA (Mail Transfer Agent) wie beispielsweise postfix installieren und konfigurieren:
# apk add postfix
(1/3) Installing db (5.3.28-r0)
(2/3) Installing libsasl (2.1.26-r8)
(3/3) Installing postfix (3.1.3-r0)
Executing postfix-3.1.3-r0.pre-install
Executing busybox-1.25.1-r0.trigger
OK: 8 MiB in 16 packages
Startpostfix:
~ # postfix start
postfix/postfix-script: warning: not owned by root: /var/spool/postfix/.
postfix/postfix-script: warning: not owned by root: /var/spool/postfix/pid
postfix/postfix-script: starting the Postfix mail system
Senden Sie die Testnachricht:
~ # mail -s "Test" [email protected]
.
EOT
Null message body; hope that's ok