48 lines
1.7 KiB
Markdown
48 lines
1.7 KiB
Markdown
---
|
|
id: task-9
|
|
title: Set up Listmonk newsletter with Mailcow SMTP
|
|
status: In Progress
|
|
assignee: []
|
|
created_date: '2026-02-03 08:16'
|
|
labels:
|
|
- infrastructure
|
|
- newsletter
|
|
- katheryn-website
|
|
dependencies: []
|
|
priority: medium
|
|
---
|
|
|
|
## Description
|
|
|
|
<!-- SECTION:DESCRIPTION:BEGIN -->
|
|
Deploy Listmonk self-hosted newsletter manager on Netcup RS 8000 and configure Mailcow as the SMTP relay for sending.
|
|
|
|
Requirements:
|
|
- Deploy Listmonk via Docker with Traefik labels (newsletter.jeffemmett.com)
|
|
- Configure Mailcow SMTP (orders@katheryntrenshaw.com via mail.rmail.online)
|
|
- Set up subscriber list for Katheryn Trenshaw updates
|
|
- Connect subscribe forms on katheryn-staging site to Listmonk API
|
|
- Test end-to-end: subscribe → receive confirmation → receive newsletter
|
|
<!-- SECTION:DESCRIPTION:END -->
|
|
|
|
## Acceptance Criteria
|
|
<!-- AC:BEGIN -->
|
|
- [x] #1 Listmonk deployed and accessible via web UI
|
|
- [x] #2 Mailcow SMTP configured and sending test emails
|
|
- [x] #3 Subscribe form on katheryn site connected to Listmonk
|
|
- [ ] #4 End-to-end test: subscribe and receive newsletter
|
|
<!-- AC:END -->
|
|
|
|
## Notes
|
|
|
|
### 2026-04-03 — Deployed
|
|
- Listmonk v5.1.0 deployed at https://newsletter.jeffemmett.com
|
|
- Postgres 16-alpine DB, Traefik routing, Cloudflare tunnel + DNS
|
|
- Cloudflare Access protects admin UI; bypass for /api/subscribers and /api/public
|
|
- SMTP: orders@katheryntrenshaw.com via mail.rmail.online:587 STARTTLS
|
|
- "Katheryn Trenshaw Newsletter" list created (ID 3, public, double opt-in)
|
|
- API user `api-frontend` with token auth for frontend integration
|
|
- Frontend subscribe route updated to call Listmonk API (token auth)
|
|
- Fallback to email notifications when Listmonk env vars not set (local dev)
|
|
- AC #4 pending: needs frontend rebuild+deploy, then real email test
|