Домашня лабораторія та власний сервер

Отримувати листи від OSS-застосунків удома через Mailpit і пересилати їх у Discord

Коли на домашньому сервері працюють застосунки з відкритим кодом, часто доводиться надсилати листи: для реєстрації, відновлення пароля тощо. Але відправляти пошту прямо з дому означає налаштовувати SMTP-сервер і домен відправника, а це клопіткіше, ніж здається. Ця стаття, яку я знайшов на Qiita, розв'язує проблему простіше, за допомогою Mailpit і Discord.

Mailpit спочатку був інструментом для тестування відправлення листів. Його можна використовувати як SMTP-сервер, і в нього є API для тестів. Якщо налаштувати webhook, він може викликати зовнішній застосунок одразу після надходження листа. У статті ця можливість використана, щоб пересилати вміст вхідних листів у Discord.

Схема складається з двох контейнерів, які запускаються через Docker Compose: сам Mailpit і webhook-handler. Webhook-handler — невеликий застосунок на Python, написаний на FastAPI. Він приймає webhook від Mailpit, оформлює відправника й одержувача і передає їх на webhook Discord. До сповіщення можна додати посилання на веб-інтерфейс Mailpit, щоб за потреби відкрити лист. Налаштування, зокрема URL webhook, винесені в окремий файл .env.

Навіть без відправлення листів назовні корисно одразу дізнаватися, що прийшов лист для скидання пароля. Тим, хто запускає в домашній лабораторії кілька застосунків, збір пошти в одному місці, напевно, суттєво спростить адміністрування. Допис від серпня 2026 року.

Джерело: Qiita

Коментарі 0

Залиште перший коментар будь-якою мовою.

Увійдіть, щоб коментувати