Hostovat Listmonk na Managed VPS znamená uchovávat své seznamy odběratelů a kampaně na vlastním stroji, který naše týmy udržují aktuální a ve dne i v noci hlídají. Listmonk je svobodný software pod licencí AGPL-3.0. Tento průvodce sleduje jeho oficiální dokumentaci: volbu verze, Docker Compose, PostgreSQL, HTTPS, odesílání přes SMTP, návratky, souhlas, zálohy a aktualizace.
Autor: Simon Vasconcelos Lee
Publikováno 12. listopadu 2026Doba čtení: 13 minut
pg_dump.Listmonk spravuje vaše rozesílací seznamy a newslettery z webového rozhraní. Je to jediný program napsaný v Go, jehož jedinou závislostí je PostgreSQL. Jeho seznamy jsou jednosměrné: píšete svým odběratelům, nejde o diskusní seznam mezi nimi.
Listmonk je vydáván pod licencí GNU AGPL verze 3. Můžete ho používat, i ve firmě, a odesílat své kampaně i kampaně svých zákazníků, aniž byste kupovali licenci. Zbývají náklady na server a na vaši odesílací službu.
Článek 13 přidává podmínku specifickou pro AGPL: pokud program upravíte, musí vaše verze všem, kdo ji používají na dálku přes síť, jasně nabídnout možnost získat její zdrojový kód zdarma. Pokud šíříte kopie, platí také povinnosti licence týkající se sdílení kódu. Provozování Listmonk bez úprav tento článek nespouští.
Bod, který je třeba znát před začátkem. Na GitHubu označuje štítek „Latest“ v tuto chvíli verzi v7.0.0-beta.2 z 10. listopadu 2026, kterou projekt sám představuje jako betu. Poslední stabilní verzí je v6.2.0, která obsahuje bezpečnostní opravy oprávnění. K 11. listopadu 2026 označuje obraz Docker latest právě tuto v6.2.0.
| Verze | Obraz Docker | Stav |
|---|---|---|
| v6.2.0 | listmonk/listmonk:v6.2.0 | Stabilní: ta z tohoto průvodce |
| v7.0.0-beta.2 | listmonk/listmonk:beta | Beta: vyzkoušet na kopii, se zálohou |
| nightly | listmonk/listmonk:nightly | Podle projektu netestovaná: na vlastní riziko |
Verze 7 nahrazuje celé administrační rozhraní, mění některé jeho adresy, z nastavení app.from_email dělá seznam adres a upravuje klíče překladů, což se dotýká vlastních šablon. Než na ni přejdete, přečtěte si její poznámky k vydání.
Soubor Compose projektu spouští --upgrade --yes při každém startu: nový obraz zmigruje databázi, aniž by se vás zeptal. Zmigrovanou databázi ale starší verze znovu nepřečte a návrat zpět vyžaduje obnovit zálohu. S pevnou značkou, například v6.2.0, zůstává změna verze vaším rozhodnutím.
Projekt doporučuje Docker Compose: jeho soubor spouští Listmonk a PostgreSQL společně. Na serveru s nainstalovaným Dockerem vytvořte složku a stáhněte tento soubor:
mkdir listmonk
cd listmonk
curl -LO https://github.com/knadh/listmonk/raw/master/docker-compose.yml
Projekt žádá přizpůsobit tento soubor vašemu prostředí. Zde jsou jediné řádky ke změně, zbytek se nemění:
x-db-credentials: &db-credentials
POSTGRES_USER: &db-user listmonk
POSTGRES_PASSWORD: &db-password un-mot-de-passe-long
POSTGRES_DB: &db-name listmonk
services:
app:
image: listmonk/listmonk:v6.2.0
ports:
- "127.0.0.1:9000:9000"
hostname: listmonk.example.com
listmonk. Změňte ho před prvním spuštěním, protože obraz PostgreSQL tuto proměnnou čte jen u prázdné složky s daty.latest, z důvodu uvedeného výše.127.0.0.1: to je naše úprava. Soubor projektu publikuje port 9000 bez omezení adres a PostgreSQL už omezuje na lokální adresu. Při stejném zacházení je Listmonk dostupný jen přes reverzní proxy.Poté spusťte služby a účet Super Admin vytvořte předem. Tyto dvě proměnné slouží jen při prvním spuštění a bez nich se účet vytvoří při první návštěvě rozhraní: ať raději existuje dřív, než otevřete svou doménu.
LISTMONK_ADMIN_USER=votre-identifiant LISTMONK_ADMIN_PASSWORD=votre-mot-de-passe docker compose up -d
Listmonk běží také jako samostatný program, vedle vašeho vlastního serveru PostgreSQL ve verzi 12 nebo vyšší, kde je databáze již vytvořena.
listmonk_6.2.0_linux_amd64.tar.gz, a vyhněte se betě zobrazené nahoře, a rozbalte binární soubor.config.toml../listmonk --new-config
./listmonk --install
./listmonk
Ve výchozím nastavení config.toml naslouchá na localhost:9000, což se hodí za reverzní proxy. Repozitář poskytuje soubor služby listmonk@.service pro systemd.
Web projektu uvádí produkční instanci, která odesílá kampaň s více než 7 miliony e-mailů se zlomkem jednoho jádra procesoru a špičkou 57 MB paměti. Neuvádí žádné minimum ani číslo pro PostgreSQL, jehož objem roste s vašimi odběrateli, otevřeními a kliknutími. Na Managed VPS nám popište své využití a doporučíme vám vhodnou velikost.
Vaši odběratelé klikají na odkazy, které vedou na vaši instanci: odhlášení, potvrzení, sledování kliknutí. Provozuje se proto přes HTTPS na vlastním doménovém jménu. Vytvořte pro toto jméno záznamy A a AAAA směřující na váš server, kde návštěvníci přicházejí na porty 80 a 443. Dokumentace Listmonk volbu proxy ponechává na vás, zde jsou dvě běžné konfigurace.
Caddy si certifikát získává a obnovuje sám:
listmonk.example.com {
reverse_proxy 127.0.0.1:9000
}
Nginx ve výchozím nastavení odmítá požadavky větší než 1 MB, s chybou 413. Pro import souboru odběratelů nebo obrázků zvyšte tento limit podle velikosti svých souborů:
server {
listen 80;
listen [::]:80;
server_name listmonk.example.com;
client_max_body_size 100m;
location / {
proxy_pass http://127.0.0.1:9000;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
Certbot pak nainstaluje certifikát Let’s Encrypt a přesměrování na HTTPS a certifikát poté obnovuje sám:
sudo certbot --nginx -d listmonk.example.com
Přihlaste se na https://listmonk.example.com/admin a otevřete „Settings“:
https://listmonk.example.com. Listmonk z ní skládá odkazy pro odhlášení, potvrzení a sledování ve vašich e-mailech. Její výchozí hodnota, http://localhost:9000, by u vašich odběratelů nefungovala./listmonk/uploads, složka, kterou soubor Compose připojuje na serveru.Pokud chcete přístup filtrovat, podle adresy IP nebo přes ověřovací proxy, dokumentace rozděluje cesty takto:
| Cesty | Úloha | Přístup |
|---|---|---|
/admin/*, /api/*, /webhooks/bounce | Správa, její API a vnitřní webhook návratek | Soukromý |
/subscription/*, /public/* | Stránky přihlášení k odběru a jejich soubory | Veřejný |
/link/*, /campaign/* | Sledování odkazů a sledovací pixel | Veřejný |
/webhooks/service/* | Návratky zasílané vaší odesílací službou | Veřejný |
/uploads/* | Obrázky ve vašich e-mailech | Veřejný |
Listmonk připravuje a dávkuje vaše e-maily a poté je svěřuje serverům SMTP, které deklarujete v „Settings“, „SMTP“. Sám je do schránek vašich odběratelů nedoručuje: kvalita doručení tedy závisí na tomto serveru, na vaší doméně a na vašich seznamech.
Pro hromadné odesílání zvolte specializovanou odesílací službu: nese pověst vašich odesílání a podpisy vaší domény a umí hlásit návratky. Z VPS Simafri vede odesílání přes ověřené relé SMTP na portu 587: zde relé této služby.
Pro orientaci dokumentace Listmonk popisuje návratky služeb Amazon SES, Azure Communication Services, SendGrid, Postmark, Forward Email a Lettermint. Porovnejte je podle svého objemu a příjemců.
| Nastavení | Hodnota | Co ověřujete |
|---|---|---|
| Host | Adresa SMTP vaší služby | Nahrazuje uvedenou ukázkovou hodnotu |
| Port | 587 | Předvolby na obrazovce často nabízejí jiný port: vraťte se na 587 |
| TLS | STARTTLS | Jde ruku v ruce s portem 587 |
| Auth protocol | Protokol vaší služby, často LOGIN | S přihlašovacím jménem a heslem SMTP této služby |
Poté klikněte na „Test connection“: Listmonk odešle zkušební zprávu a při selhání odesílání zobrazí chybu serveru. Můžete deklarovat několik serverů, vybrat jeden z nich pro kampaň, nebo směrovat odesílání podle adresy či domény odesílatele.
Nastavte ji v „Settings“, „Performance“, pod limitem své služby:
Zpráva, která selže, se opakuje podle nastavení „Retries“, na jiných spojeních serveru. Pokud selže znovu, Listmonk ji zaznamená jako chybu a pokračuje další: během velké kampaně tyto chyby sledujte.
Vlastní hosting aplikace vám dává tato témata do rukou a právě ta rozhodují, zda vaše e-maily dorazí.
Odesílejte z adresy své domény a v její zóně DNS zveřejněte záznamy SPF a DKIM, které vám dá vaše odesílací služba, spolu se záznamem DMARC. Google žádá všechny tři od odesílatelů s více než 5 000 zprávami denně na účty Gmail, s odesílací doménou zarovnanou podle SPF nebo DKIM, s odhlášením jedním kliknutím u marketingových zpráv a s mírou nahlášení jako spam pod 0,30 %, ideálně pod 0,10 %.
{{ UnsubscribeURL }} do patičky své šablony. Tento odkaz vede ke správě předvoleb a k odhlášení.Listmonk uplatňuje typ seznamu, který zvolíte. Na seznamu se single opt-inem dostává vaše kampaně i odběratel přidaný bez potvrzení. Na seznamu s double opt-inem dostane nejdřív potvrzovací e-mail a vaše kampaně dostávají jen potvrzení odběratelé. Je to volba, která nejlépe chrání vaši odesílací pověst a uchovává jasnou stopu souhlasu.
Pravidla závisejí na zemi vašich příjemců. Ve Francii například CNIL u fyzických osob žádá předchozí souhlas, formou pozitivního úkonu, například nezaškrtnutého políčka, s výjimkou pro vaše zákazníky u podobných produktů či služeb. Mezi podnikateli se oslovování může opírat o oprávněný zájem, pokud se týká jejich profese. V každém případě každá zpráva identifikuje odesílatele a nabízí jednoduchý způsob, jak další odmítnout.
Pište jen lidem, kteří vaše zprávy očekávají. Koupený nebo starý seznam zvyšuje návratky a nahlášení jako spam a důsledky nese vaše doména.
Sledovací pixel a sledování kliknutí se dotýkají soukromí a dokumentace žádá používat je v souladu s pravidly, jako je GDPR. Ve výchozím nastavení toto sledování není spojeno s jednotlivými odběrateli: volba „Individual subscriber tracking“ ho spojí a „Disable tracking“ ho zcela vypne, v „Settings“, „Privacy“.
Další psaní na adresu, která vaše zprávy odmítá, poškozuje vaši odesílací pověst. Zpracování návratek je zpočátku vypnuté: zapněte ho v „Settings“, „Bounces“ a pak zvolte jednu z těchto dvou cest.
https://listmonk.example.com/webhooks/service/ses, přičemž poslední slovo se mění podle služby. Tato adresa musí zůstat veřejná.U vyhrazené schránky ji deklarujte jako návratovou adresu v „Settings“, „SMTP“, „Custom headers“:
[
{"Return-Path": "your-bounce-inbox@example.com"}
]
Výchozí nastavení jsou ta, která dokumentace uvádí pro SES, a tvoří dobrý základ:
| Typ návratky | Počet | Akce |
|---|---|---|
| Soft (lehká) | 2 | None: žádná |
| Hard (trvalá) | 1 | Blocklist: adresa se zablokuje |
| Complaint (nahlášení jako spam) | 1 | Blocklist: adresa se zablokuje |
Listmonk vyžaduje PostgreSQL 12 nebo vyšší. Soubor Compose přináší postgres:17-alpine, s daty ve svazku Docker listmonk-data. Odběratelé, kampaně, šablony, statistiky a většina nastavení žijí v něm; v konfiguraci zůstávají jen přístupové údaje k databázi a adresa naslouchání.
Chcete-li zamířit na existující server PostgreSQL, upravte proměnné LISTMONK_db__host, LISTMONK_db__port, LISTMONK_db__user, LISTMONK_db__password a LISTMONK_db__database služby app.
Listmonk je navržen pro velké seznamy. S růstem databáze může být právě ona tím, co zpomaluje rozhraní: s miliony odběratelů může zobrazení dashboardu a počítadel trvat desítky sekund. Projekt pak radí dva kroky:
VACUUM ANALYZE na velké databázi, například každý týden. Příkaz po dobu svého běhu blokuje dotazy, obvykle několik sekund.docker compose exec db psql -U listmonk -d listmonk -c 'VACUUM ANALYZE;'
Vaši instanci tvoří dva prvky: databáze PostgreSQL a složka uploads, pokud vaše obrázky zůstávají na disku. pg_dump vytvoří konzistentní export bez zastavení Listmonk a bez blokování ostatních přístupů k databázi:
docker compose exec -T db pg_dump -U listmonk listmonk > listmonk-$(date +%F).sql
tar -czf listmonk-uploads-$(date +%F).tar.gz uploads
Pro obnovu zastavte Listmonk, vyprázdněte databázi a znovu načtěte export. Jak dokumentace upřesňuje, tento krok smaže stávající databázi:
docker compose stop app
docker compose exec db psql -U listmonk -d listmonk -c 'DROP SCHEMA public CASCADE; CREATE SCHEMA public;'
docker compose exec -T db psql -U listmonk -d listmonk < listmonk-2026-11-01.sql
docker compose start app
docker-compose.yml.docker compose down app
docker compose pull
docker compose up app -d
S binárním souborem Listmonk zastavte, nahraďte binární soubor, spusťte ./listmonk --upgrade a pak jej spusťte znovu. Chcete-li se vrátit ke starší verzi, obnovte export pořízený před aktualizací a poté vraťte původní značku.
Vlastní hosting vyžaduje, abyste kromě aplikace udržovali i server. Na Managed VPS se serveru ujímají naše týmy a vaši instanci proaktivně sledují; Listmonk zůstává vaším softwarem, s jeho nastavením, vašimi seznamy a kampaněmi.
| Téma | Naše týmy | Vy |
|---|---|---|
| Server | Aktualizace systému a zabezpečení, včetně zásahů na serveru | Okamžik, který vyhovuje vašemu provozu |
| Dohled | Server sledovaný 24 hodin denně, 7 dní v týdnu, se zásahem bez čekání na vaše volání | Sledování vašich kampaní a návratek |
| Listmonk | Proaktivní sledování: chyby, zpomalení a místo na disku zachycené, doporučená oprava | Jeho instalace, aktualizace a nastavení, které zapracujete vy nebo váš AI asistent |
| Odesílání | Server, který se dostane k vašemu relé SMTP na portu 587 | Vaše odesílací služba, vaše záznamy DNS, vaše seznamy a souhlas vašich příjemců |
| Zálohy | Každou noc, šifrované a uchovávané mimo stroj; obnova v ceně | Žádost o obnovu a váš export před každou aktualizací |
| Migrace | Váš stávající server přenesen zdarma | Okamžik přepnutí |
Pokud dáváte přednost tomu, aby naše týmy zasáhly přímo v aplikaci, tato služba se účtuje po hodinách nebo paušálem, s cenovou nabídkou sdělenou před zásahem.
S Managed VPS od Simafri udržují naše týmy server vaší instance Listmonk aktuální, hlídají ho ve dne i v noci a zasahují bez čekání na vaše volání; vaši instanci také proaktivně sledují a doporučí vám užitečné opravy, které zapracujete vy nebo váš AI asistent. Zálohy se každou noc šifrují a uchovávají mimo stroj, jejich obnova je v ceně a migrace vašeho stávajícího serveru je zdarma.
Ano. Listmonk je pod licencí AGPL-3.0: můžete ho ve firmě používat, aniž byste kupovali licenci. Pokud ho upravíte, musí vaši vzdálení uživatelé moci získat zdrojový kód vaší verze. Zbývají náklady na server a na vaši odesílací službu.
Verzi v6.2.0, poslední stabilní k 11. listopadu 2026. Verze v7.0.0-beta.2, zobrazená na GitHubu nahoře, je beta. V Docker Compose pevně nastavte obraz na listmonk/listmonk:v6.2.0: změna verze pak zůstává vaším rozhodnutím, protože zmigrovanou databázi starší verze znovu nepřečte.
Stáhněte soubor docker-compose.yml projektu, změňte heslo databáze a značku obrazu a spusťte docker compose up -d. Rozhraní odpovídá na portu 9000, s PostgreSQL vedle. Provozujte ho přes HTTPS za reverzní proxy a vyplňte jeho Root URL.
Listmonk odesílá přes servery SMTP, které nastavíte. Pro hromadné odesílání zvolte specializovanou odesílací službu, se STARTTLS na portu 587, a zveřejněte SPF, DKIM a DMARC na své doméně. Dokumentace Listmonk popisuje například návratky služeb Amazon SES, SendGrid a Postmark.
Zapněte zpracování v Settings, Bounces a pak napojte webhook své odesílací služby nebo vyhrazenou schránku POP3. Výchozí nastavení zablokuje adresu už při jedné trvalé návratce nebo jednom nahlášení jako spam.
Exportujte databázi pomocí pg_dump, bez zastavení služby, a uchovejte složku uploads, pokud jsou vaše obrázky na disku. Projekt žádá tento export před každou aktualizací, protože starší verze už zmigrovanou databázi nepřečte.
Dává k tomu nástroje: seznamy s double opt-inem, odkaz pro odhlášení ve vašich šablonách, hlavičku List-Unsubscribe, export a mazání dat odběratelem. Samotný souhlas je třeba získat na vaší straně, podle pravidel země vašich příjemců.
Managed VPS pokrývá server: systém, zabezpečení, dohled a zálohy. Naše týmy také proaktivně sledují vaši instanci a doporučí vám užitečné opravy, které zapracujete vy. Zásah v samotné aplikaci se účtuje po hodinách nebo paušálem.
Simafri
Promluvme si o vašem záměru
Řekněte nám v pár slovech, co potřebujete: rychle se vám ozveme.
Děkujeme! Vaše zpráva byla odeslána. Brzy se vám ozveme.
Máte raději e-mail? Napište nám na support@simafri.com.