Kun hostaatte Listmonkin Managed VPS:llä, tilaajalistanne ja kampanjanne ovat koneella, joka on teidän ja jota tiimimme pitävät ajan tasalla ja valvovat yötä päivää. Listmonk on AGPL-3.0-lisenssillä julkaistu avoimen lähdekoodin ohjelma. Tämä opas seuraa sen virallista dokumentaatiota: valittava versio, Docker Compose, PostgreSQL, HTTPS, lähetys SMTP:llä, palautuvat viestit, suostumus, varmuuskopiot ja päivitykset.
Kirjoittaja: Simon Vasconcelos Lee
Julkaistu 12. marraskuuta 2026Lukuaika: 13 minuuttia
pg_dump ennen jokaista päivitystä.Listmonk hallinnoi postituslistojanne ja uutiskirjeitänne verkkokäyttöliittymästä. Se on yksi Go-kielellä kirjoitettu ohjelma, jonka ainoa riippuvuus on PostgreSQL. Sen listat ovat yksisuuntaisia: kirjoitatte tilaajillenne, eikä kyseessä ole heidän keskinäinen keskusteluluettelonsa.
Listmonk julkaistaan GNU AGPL version 3 -lisenssillä. Voitte käyttää sitä myös yrityksessä ja lähettää omia ja asiakkaidenne kampanjoita ilman ostettavaa lisenssiä. Jäljelle jäävät palvelimen ja lähetyspalvelunne kustannukset.
Pykälä 13 lisää AGPL:lle ominaisen ehdon: jos muokkaatte ohjelmaa, versionne on tarjottava selkeästi kaikille, jotka käyttävät sitä etäyhteydellä verkon kautta, mahdollisuus saada sen lähdekoodi maksutta. Jos jaatte kopioita, lisenssin koodin jakamista koskevat velvoitteet pätevät myös. Listmonkin ajaminen muokkaamatta ei laukaise tätä pykälää.
Yksi seikka kannattaa tietää ennen aloittamista. GitHubissa tunniste ”Latest” osoittaa tällä hetkellä versioon v7.0.0-beta.2, 10. marraskuuta 2026, jonka projekti itse esittelee betana. Viimeisin vakaa versio on v6.2.0, joka sisältää tietoturvakorjauksia oikeuksiin. 11. marraskuuta 2026 Docker-image latest osoittaa tähän v6.2.0:aan.
| Versio | Docker-image | Tila |
|---|---|---|
| v6.2.0 | listmonk/listmonk:v6.2.0 | Vakaa: tämän oppaan versio |
| v7.0.0-beta.2 | listmonk/listmonk:beta | Beta: kokeiltavaksi kopiolla, varmuuskopion kanssa |
| nightly | listmonk/listmonk:nightly | Testaamaton projektin mukaan: omalla vastuulla |
Versio 7 korvaa koko ylläpitokäyttöliittymän, muuttaa joitakin sen osoitteita, tekee asetuksesta app.from_email osoiteluettelon ja muuttaa käännösavaimia, mikä vaikuttaa mukautettuihin pohjiin. Lukekaa sen julkaisutiedot ennen siirtymistä.
Projektin Compose-tiedosto ajaa --upgrade --yes jokaisessa käynnistyksessä: uusi image migroi tietokannan kysymättä. Migroitua tietokantaa ei kuitenkaan voi lukea vanhemmalla versiolla, ja paluu vaatii varmuuskopion palauttamista. Kiinteällä tunnisteella, kuten v6.2.0, versionvaihto pysyy teidän päätöksenänne.
Projekti suosittelee Docker Composea: sen tiedosto käynnistää Listmonkin ja PostgreSQL:n yhdessä. Luokaa palvelimelle, jolle Docker on asennettu, kansio ja noutakaa tämä tiedosto:
mkdir listmonk
cd listmonk
curl -LO https://github.com/knadh/listmonk/raw/master/docker-compose.yml
Projekti pyytää mukauttamaan tämän tiedoston ympäristöönne. Tässä ovat ainoat muutettavat rivit, loput eivät muutu:
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. Vaihtakaa se ennen ensimmäistä käynnistystä, sillä PostgreSQL-image lukee tämän muuttujan vain tyhjästä datakansiosta.latest tilalle, edellä kerrotusta syystä.127.0.0.1: tämä on oma mukautuksemme. Projektin tiedosto julkaisee portin 9000 ilman osoiterajausta ja rajaa PostgreSQL:n jo paikalliseen osoitteeseen. Samalla tavalla käsiteltynä Listmonkiin pääsee vain käänteisen välityspalvelimen kautta.Käynnistäkää sitten palvelut luoden Super Admin -tili etukäteen. Nämä kaksi muuttujaa palvelevat vain ensimmäistä käynnistystä, ja ilman niitä tili luodaan käyttöliittymän ensimmäisellä käyntikerralla: parempi, että se on olemassa ennen verkkotunnuksenne avaamista.
LISTMONK_ADMIN_USER=votre-identifiant LISTMONK_ADMIN_PASSWORD=votre-mot-de-passe docker compose up -d
Listmonk toimii myös yksittäisenä ohjelmana oman PostgreSQL-palvelimenne rinnalla, versiossa 12 tai uudemmassa, jossa tietokanta on jo luotu.
listmonk_6.2.0_linux_amd64.tar.gz, välttäen ensimmäisenä näkyvää betaa, ja purkakaa binääri.config.toml../listmonk --new-config
./listmonk --install
./listmonk
Oletuksena config.toml kuuntelee osoitetta localhost:9000, mikä sopii käänteisen välityspalvelimen taakse. Repositorio toimittaa systemd-palvelutiedoston listmonk@.service.
Projektin sivusto mainitsee tuotantoinstanssin, joka lähettää yli 7 miljoonan sähköpostin kampanjan murto-osalla suorittimen ytimestä ja 57 Mt:n muistipiikillä. Se ei julkaise vähimmäisvaatimusta eikä lukua PostgreSQL:lle, jonka tilavuus kasvaa tilaajien, avausten ja klikkausten mukana. Managed VPS -palvelimella kuvailkaa meille käyttötarkoituksenne, niin suosittelemme sopivaa kokoa.
Tilaajanne klikkaavat linkkejä, jotka osoittavat instanssiinne: tilauksen peruutus, vahvistus, klikkausten seuranta. Se tarjotaan siksi HTTPS:llä omalla verkkotunnuksellaan. Luokaa tämän nimen A- ja AAAA-tietueet palvelimeenne, jonne kävijät saapuvat portteihin 80 ja 443. Listmonkin dokumentaatio jättää välityspalvelimen valinnan vapaaksi, tässä kaksi yleistä asetusta.
Caddy hankkii ja uusii varmenteen itse:
listmonk.example.com {
reverse_proxy 127.0.0.1:9000
}
Nginx hylkää oletuksena yli 1 Mt:n pyynnöt virheellä 413. Tilaajatiedoston tai kuvien tuontia varten nostakaa tätä rajaa tiedostojenne mukaan:
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 asentaa sen jälkeen Let’s Encrypt -varmenteen ja uudelleenohjauksen HTTPS:ään ja uusii varmenteen sitten itse:
sudo certbot --nginx -d listmonk.example.com
Kirjautukaa osoitteessa https://listmonk.example.com/admin ja avatkaa sitten ”Settings”:
https://listmonk.example.com. Listmonk muodostaa siitä sähköpostiensa peruutus-, vahvistus- ja seurantalinkit. Sen lähtöarvo, http://localhost:9000, ei toimisi tilaajillanne./listmonk/uploads, kansio, jonka Compose-tiedosto liittää palvelimelle.Pääsyn suodattamiseksi IP-osoitteen tai todennusvälityspalvelimen avulla dokumentaatio jakaa reitit näin:
| Reitit | Tehtävä | Pääsy |
|---|---|---|
/admin/*, /api/*, /webhooks/bounce | Ylläpito, sen rajapinta ja sisäinen palautuvien viestien webhook | Yksityinen |
/subscription/*, /public/* | Tilaussivut ja niiden tiedostot | Julkinen |
/link/*, /campaign/* | Linkkien seuranta ja seurantapikseli | Julkinen |
/webhooks/service/* | Lähetyspalvelunne lähettämät palautuvat viestit | Julkinen |
/uploads/* | Sähköpostienne kuvat | Julkinen |
Listmonk valmistelee ja tahdittaa sähköpostinne ja uskoo ne sitten SMTP-palvelimille, jotka ilmoitatte kohdassa ”Settings”, ”SMTP”. Se ei toimita niitä itse tilaajienne postilaatikoihin: toimituksen laatu riippuu siis tästä palvelimesta, verkkotunnuksestanne ja listoistanne.
Massalähetykseen valitkaa erikoistunut lähetyspalvelu: se kantaa lähetystenne maineen ja verkkotunnuksenne allekirjoitukset ja osaa palauttaa palautuvat viestit. Simafrin VPS:ltä lähetys kulkee todennetun SMTP-releen kautta portissa 587: tässä tämän palvelun releen kautta.
Suuntaa-antavasti Listmonkin dokumentaatio kuvaa palautuvat viestit Amazon SES:stä, Azure Communication Servicesistä, SendGridistä, Postmarkista, Forward Emailistä ja Lettermintistä. Vertailkaa niitä volyymin ja vastaanottajienne mukaan.
| Asetus | Arvo | Mitä tarkistatte |
|---|---|---|
| Host | Palvelunne SMTP-osoite | Korvaa annetun esimerkkiarvon |
| Port | 587 | Näytön esiasetukset ehdottavat usein toista porttia: palatkaa porttiin 587 |
| TLS | STARTTLS | Kuuluu yhteen portin 587 kanssa |
| Auth protocol | Palvelunne protokolla, usein LOGIN | Palvelun SMTP-tunnuksella ja salasanalla |
Napsauttakaa sitten ”Test connection”: Listmonk lähettää koeviestin ja näyttää palvelimen virheen, jos lähetys epäonnistuu. Voitte ilmoittaa useita palvelimia, valita yhden kampanjakohtaisesti tai reitittää lähetykset lähettäjän osoitteen tai verkkotunnuksen mukaan.
Säätäkää se kohdassa ”Settings”, ”Performance”, palvelunne rajan alapuolelle:
Epäonnistunut viesti yritetään uudelleen asetuksen ”Retries” mukaan, palvelimen muilla yhteyksillä. Jos se epäonnistuu yhä, Listmonk merkitsee sen virheeksi ja siirtyy seuraavaan: seuratkaa näitä virheitä suuren kampanjan aikana.
Sovelluksen hostaaminen jättää nämä asiat teidän hallintaanne, ja juuri ne ratkaisevat, saapuvatko sähköpostinne perille.
Lähettäkää verkkotunnuksenne osoitteesta ja julkaiskaa sen DNS-vyöhykkeessä SPF- ja DKIM-tietueet, jotka lähetyspalvelunne antaa, sekä DMARC-tietue. Google vaatii kaikki kolme lähettäjiltä, jotka lähettävät yli 5 000 viestiä päivässä Gmail-tileille, lähetysverkkotunnuksen yhdenmukaisena SPF:n tai DKIM:n kanssa, markkinointiviestien tilauksen peruutuksen yhdellä napsautuksella sekä roskapostiksi ilmoittamisen asteen alle 0,30 %, mieluiten alle 0,10 %.
{{ UnsubscribeURL }} pohjanne alatunnisteeseen. Tämä linkki vie asetusten hallintaan ja tilauksen peruutukseen.Listmonk soveltaa valitsemaanne listatyyppiä. Yksinkertaisen opt-inin listalla ilman vahvistusta lisätty tilaaja saa silti kampanjanne. Kaksinkertaisen opt-inin listalla hän saa ensin vahvistussähköpostin, ja vain vahvistaneet tilaajat saavat kampanjanne. Tämä valinta suojaa parhaiten lähetysmainettanne ja säilyttää selkeän jäljen suostumuksesta.
Säännöt riippuvat vastaanottajienne maasta. Esimerkiksi Ranskassa CNIL vaatii yksityishenkilöiden ennakkosuostumuksen myönteisellä toimella, kuten ruudulla, jota ei ole valmiiksi rastitettu, poikkeuksena omat asiakkaanne samankaltaisten tuotteiden tai palveluiden osalta. Yritysten välillä markkinointi voi perustua oikeutettuun etuun, jos se koskee heidän ammattiaan. Joka tapauksessa jokainen viesti tunnistaa lähettäjän ja tarjoaa helpon tavan kieltäytyä seuraavista.
Kirjoittakaa vain ihmisille, jotka odottavat viestejänne. Ostettu tai vanha lista nostaa palautuvien viestien ja roskaposti-ilmoitusten määrää, ja seuraukset kantaa verkkotunnuksenne.
Seurantapikseli ja klikkausten seuranta koskettavat yksityisyyttä, ja dokumentaatio pyytää käyttämään niitä esimerkiksi GDPR:n kaltaisia sääntöjä noudattaen. Oletuksena tätä seurantaa ei liitetä yksittäiseen tilaajaan: valinta ”Individual subscriber tracking” liittää sen, ja ”Disable tracking” katkaisee sen kokonaan, kohdassa ”Settings”, ”Privacy”.
Jatkuva kirjoittaminen osoitteeseen, joka hylkää viestinne, heikentää lähetysmainettanne. Palautuvien viestien käsittely on aluksi pois päältä: ottakaa se käyttöön kohdassa ”Settings”, ”Bounces” ja valitkaa sitten jompikumpi näistä kahdesta tiestä.
https://listmonk.example.com/webhooks/service/ses, jonka viimeinen sana vaihtelee palvelun mukaan. Tämän osoitteen on pysyttävä julkisena.Erillistä laatikkoa varten ilmoittakaa se paluuosoitteeksi kohdassa ”Settings”, ”SMTP”, ”Custom headers”:
[
{"Return-Path": "your-bounce-inbox@example.com"}
]
Lähtöasetukset ovat ne, jotka dokumentaatio antaa SES:lle, ja ne muodostavat hyvän pohjan:
| Palautuksen tyyppi | Määrä | Toiminto |
|---|---|---|
| Soft (kevyt) | 2 | None: ei mitään |
| Hard (pysyvä) | 1 | Blocklist: osoite estetään |
| Complaint (roskapostiksi ilmoittaminen) | 1 | Blocklist: osoite estetään |
Listmonk vaatii PostgreSQL 12:n tai uudemman. Compose-tiedosto tuo mukanaan postgres:17-alpine:n, tiedot Docker-taltiossa listmonk-data. Tilaajat, kampanjat, pohjat, tilastot ja suurin osa asetuksista ovat siellä; vain tietokannan tunnukset ja kuunteluosoite pysyvät asetuksissa.
Osoittaaksenne olemassa olevaan PostgreSQL-palvelimeen muokatkaa palvelun app muuttujia LISTMONK_db__host, LISTMONK_db__port, LISTMONK_db__user, LISTMONK_db__password ja LISTMONK_db__database.
Listmonk on suunniteltu suurille listoille. Tietokannan kasvaessa juuri se voi hidastaa käyttöliittymää: miljoonilla tilaajilla kojelauta ja laskurit voivat kestää kymmeniä sekunteja näkyä. Projekti neuvoo silloin kahta toimenpidettä:
VACUUM ANALYZE suurella tietokannalla, esimerkiksi viikoittain. Komento estää kyselyt ajonsa ajaksi, yleensä muutamaksi sekunniksi.docker compose exec db psql -U listmonk -d listmonk -c 'VACUUM ANALYZE;'
Instanssinne muodostuu kahdesta osasta: PostgreSQL-tietokannasta ja kansiosta uploads, jos kuvanne pysyvät levyllä. pg_dump tuottaa yhtenäisen viennin pysäyttämättä Listmonkia tai estämättä muita pääsyjä tietokantaan:
docker compose exec -T db pg_dump -U listmonk listmonk > listmonk-$(date +%F).sql
tar -czf listmonk-uploads-$(date +%F).tar.gz uploads
Palauttaaksenne pysäyttäkää Listmonk, tyhjentäkää tietokanta ja ladatkaa vienti uudelleen. Kuten dokumentaatio täsmentää, tämä toimenpide tyhjentää käytössä olevan tietokannan:
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
Binäärillä pysäyttäkää Listmonk, korvatkaa binääri, ajakaa ./listmonk --upgrade ja käynnistäkää se sitten uudelleen. Palataksenne aiempaan versioon palauttakaa ennen päivitystä otettu vienti ja asettakaa sitten vanha tunniste takaisin.
Oma hostaus vaatii palvelimen ylläpitoa sovelluksen lisäksi. Managed VPS -palvelimella tiimimme huolehtivat palvelimesta ja seuraavat instanssianne proaktiivisesti; Listmonk pysyy teidän ohjelmananne asetuksineen, listoineen ja kampanjoineen.
| Aihe | Tiimimme | Te |
|---|---|---|
| Palvelin | Järjestelmä- ja tietoturvapäivitykset, toimenpiteet palvelimella mukaan lukien | Toimintaanne sopiva ajankohta |
| Valvonta | Palvelinta seurataan ympäri vuorokauden joka päivä, ja puututaan asiaan odottamatta yhteydenottoanne | Kampanjoidenne ja palautuvien viestienne seuranta |
| Listmonk | Proaktiivinen seuranta: virheet, hitaus ja levytila havaitaan, ja korjausta suositellaan | Sen asennus, päivitykset ja asetukset, jotka toteutatte itse tai tekoälyavustajanne kanssa |
| Lähetys | Palvelin, joka tavoittaa SMTP-releenne portissa 587 | Lähetyspalvelunne, DNS-tietueenne, listanne ja vastaanottajienne suostumus |
| Varmuuskopiot | Joka yö, salattuina ja koneen ulkopuolella säilytettyinä; palautus sisältyy | Palautuspyyntö sekä vientinne ennen jokaista päivitystä |
| Siirto | Nykyinen palvelimenne siirretään, veloituksetta | Käyttöönoton ajankohta |
Jos haluatte tiimiemme toimivan itse sovelluksessa, tämä palvelu laskutetaan tuntiveloituksella tai kiinteällä hinnalla, ja arvio annetaan ennen toimenpidettä.
Simafrin Managed VPS -palvelussa tiimimme pitävät Listmonk-instanssinne palvelimen ajan tasalla, valvovat sitä yötä päivää ja toimivat odottamatta yhteydenottoanne; ne seuraavat myös instanssianne proaktiivisesti ja suosittelevat teille hyödyllisiä korjauksia, jotka toteutatte itse tai tekoälyavustajanne kanssa. Varmuuskopiot salataan joka yö ja säilytetään koneen ulkopuolella, niiden palautus sisältyy, ja nykyisen palvelimenne siirto tehdään veloituksetta.
Kyllä. Listmonk on AGPL-3.0-lisenssillä: voitte käyttää sitä yrityksessä ilman ostettavaa lisenssiä. Jos muokkaatte sitä, etäkäyttäjienne on voitava saada versionne lähdekoodi. Jäljelle jäävät palvelimen ja lähetyspalvelunne kustannukset.
Version v6.2.0, viimeisimmän vakaan version 11. marraskuuta 2026. Versio v7.0.0-beta.2, joka näkyy GitHubissa ensimmäisenä, on beta. Kiinnittäkää Docker Composessa image tunnisteeseen listmonk/listmonk:v6.2.0: versionvaihto pysyy silloin teidän päätöksenänne, koska migroitua tietokantaa ei voi lukea vanhemmalla versiolla.
Noutakaa projektin docker-compose.yml-tiedosto, vaihtakaa tietokannan salasana ja imagen tunniste ja ajakaa docker compose up -d. Käyttöliittymä vastaa portissa 9000, PostgreSQL rinnallaan. Tarjotkaa se HTTPS:llä käänteisen välityspalvelimen takaa ja täyttäkää sen Root URL.
Listmonk lähettää määrittämienne SMTP-palvelinten kautta. Massalähetykseen valitkaa erikoistunut lähetyspalvelu, STARTTLS portissa 587, ja julkaiskaa SPF, DKIM ja DMARC verkkotunnuksellanne. Listmonkin dokumentaatio kuvaa esimerkiksi Amazon SES:n, SendGridin ja Postmarkin palautuvat viestit.
Ottakaa käsittely käyttöön kohdassa Settings, Bounces ja liittäkää sitten lähetyspalvelunne webhook tai erillinen POP3-postilaatikko. Lähtöasetukset estävät osoitteen heti pysyvän palautuksen tai roskapostiksi ilmoittamisen jälkeen.
Viekää tietokanta komennolla pg_dump palvelua pysäyttämättä ja säilyttäkää kansio uploads, jos kuvanne ovat levyllä. Projekti pyytää tätä vientiä ennen jokaista päivitystä, koska aiempi versio ei lue jo migroitua tietokantaa.
Se antaa työkalut: double opt-in -listat, peruutuslinkki pohjissanne, List-Unsubscribe-otsake sekä tilaajan tietojen vienti ja poisto. Itse suostumus on kerättävä teidän puoleltanne, vastaanottajienne maan sääntöjen mukaan.
Managed VPS kattaa palvelimen: järjestelmän, tietoturvan, valvonnan ja varmuuskopiot. Tiimimme seuraavat myös instanssianne proaktiivisesti ja suosittelevat hyödyllisiä korjauksia, jotka toteutatte itse. Toimenpide sovelluksessa laskutetaan tuntiveloituksella tai kiinteällä hinnalla.
Simafri
Jutellaan hankkeestasi
Kerro meille muutamalla sanalla, mitä tarvitset: vastaamme sinulle nopeasti.
Kiitos! Pyyntösi on lähetetty. Vastaamme sinulle pian.
Suositko sähköpostia? Kirjoita meille osoitteeseen support@simafri.com.