Listmonk er en enkel, alt-i-ett selvdrevet nyhetsbrev og e-postlisteløsning for Linux. I motsetning til tradisjonelle postlisteprogrammer, utmerker den seg ved å tilby en slank plattform som er lett og rask. Her viser vi deg hvordan du installerer Listmonk ved hjelp av Docker på Ubuntu, og hvordan du kommer i gang med å bruke det til å sende nyhetsbrev.
Fordeler med å bruke Listmonk
Et av de største salgsargumentene til Listmonk er at den kan fungere med nesten hvilken som helst ekstern postleveringsserver på Internett. Dette betyr at du kan sende nyhetsbrevene dine med en vertsbasert e-postleverandør, for eksempel Gmail, eller ditt eget e-postoppsett som er vert for deg selv.

Listmonk kommer også med muligheten til å lage programmerbare e-postmaler. Dette gjør det mulig å lage tilpassede e-poster som kan justere seg selv avhengig av konteksten brukeren mottar meldingen gjennom.
Til slutt kommer Listmonk med en intuitiv analysemodul for deg å spore hvert nyhetsbrev som kjører i programmet. Den kan spore både antall klikk hver melding får, så vel som de generelle visningene en hel e-postliste oppnår i løpet av en periode.
Installasjon av Listmonk
Skaffe Docker og Docker Compose
Antagelse: Denne artikkelen forutsetter at du kjører Listmonk på en alltid-på-VPS. Videre forutsetter det også at du allerede har et domenenavn med en A- og PTR-post som peker til din VPS.
For å begynne, hent depotnøkkelen for Docker- og Docker Compose-pakkene:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg sudo chmod a+r /etc/apt/keyrings/docker.gpg
Opprett den nye depotfilen for Docker- og Docker Compose-pakkene dine:
sudo nano /etc/apt/sources.list.d/docker.list
Skriv følgende kodelinje i den nye depotfilen din:
deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable
Oppdater og oppgrader hele Ubuntu-systemet ditt ved å kjøre følgende kommando:
sudo apt update && sudo apt upgrade
Installer Docker Engine sammen med Docker Compose og dens komponentavhengigheter:
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin nginx git curl
Sørg for at din nåværende bruker har de riktige tillatelsene til å få tilgang til Docker-binærfilene:
sudo usermod -aG docker ramces
Sette opp og distribuere Listmonk
Opprett en ny mappe for Docker-filene dine i hjemmekatalogen til din nåværende bruker:
mkdir ~/listmonk && cd ~/listmonk
Opprett en ny konfigurasjonsfil for Listmonk-forekomsten din:
nano ./config.toml
Lim inn følgende kode i den nye konfigurasjonsfilen:
[app] address = "0.0.0.0:9000" admin_username = "listmonk" admin_password = "listmonk" [db] host = "listmonk_db" port = 5432 user = "listmonk" password = "INSERT_RANDOM_PASSWORD_HERE" database = "listmonk" ssl_mode = "disable" max_open = 25 max_idle = 25 max_lifetime = "300s" params = ""
Merk: Du kan enkelt lage et tilfeldig passord med kommandoen: cat /dev/urandom | tr -dc 'A-Za-z0-9' | fold -w 32 | head -n 1
Lagre den nye konfigurasjonsfilen din, og lag deretter Listmonk-forekomstens docker-compose.yml:
nano ./docker-compose.yml
Lim inn følgende kodeblokk i den nye .yml-filen. Dette er standard docker-compose.yml-filen for Listmonk som jeg endret for å fungere med min tidssone:
--- version: "3.7" x-app-defaults: restart: unless-stopped image: listmonk/listmonk:latest ports: - 9000:9000 networks: - listmonk environment: - TZ=Asia/Manila x-db-defaults: image: postgres:13 ports: - 9432:5432 networks: - listmonk environment: - POSTGRES_PASSWORD=INSERT_RANDOM_PASSWORD_HERE - POSTGRES_USER=listmonk - POSTGRES_DB=listmonk restart: unless-stopped healthcheck: test: - CMD-SHELL - pg_isready -U listmonk interval: 10s timeout: 5s retries: 6 services: db: image: postgres:13 ports: - 9432:5432 networks: - listmonk environment: - POSTGRES_PASSWORD=INSERT_RANDOM_PASSWORD_HERE - POSTGRES_USER=listmonk - POSTGRES_DB=listmonk restart: unless-stopped healthcheck: test: - CMD-SHELL - pg_isready -U listmonk interval: 10s timeout: 5s retries: 6 container_name: listmonk_db volumes: - type: volume source: listmonk-data target: /var/lib/postgresql/data app: restart: unless-stopped image: listmonk/listmonk:latest ports: - 9000:9000 networks: - listmonk environment: - TZ=Asia/Manila container_name: listmonk_app depends_on: - db volumes: - ./config.toml:/listmonk/config.toml networks: listmonk: null volumes: listmonk-data: null
Distribuerer Listmonk Docker Container
Kjør følgende Docker-kommando for å generere forekomstens databasefil:
docker compose up db
Åpne en ny SSH-tilkobling, og start deretter byggeprosessen for Listmonk ved å kjøre «listmonk»-binæren inne i Docker-beholderen:
docker compose run --rm app ./listmonk --install
Skriv «Y», og trykk deretter Tast inn når byggeskriptet ber deg om å slette eksisterende data på den kjørende databasen. Dette vil sikre at Listmonk-beholderen din er ren når den starter.

Gå tilbake til SSH-økten for din forekomsts database og trykk Ctrl + C for å avslutte økten elegant.

Til slutt, start alle Docker-beholderne for Listmonk på nytt med de riktige innstillingene:
docker compose up -d app db
Opprette Nginx Reverse Proxy
Selv om Listmonk har begynt å kjøre på en Docker-forekomst, er den ikke offentlig tilgjengelig før du har konfigurert en omvendt proxy for å koble til den. Følg instruksjonene nedenfor for å konfigurere en Nginx omvendt proxy.
Opprett en ny sidekonfigurasjonsfil for Listmonk-forekomsten din:
sudo nano /etc/nginx/sites-available/listmonk
Lim inn følgende kodeblokk i den nye konfigurasjonsfilen for nettstedet:
server { server_name listmonk.myvpsserver.top; location / { proxy_pass http://127.0.0.1:9000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; } }
Koble din nye konfigurasjonsfil fra /etc/nginx/sites-available til /etc/nginx/sites-enabled:
sudo ln -s /etc/nginx/sites-available/listmonk /etc/nginx/sites-enabled/
Start Nginx-serverdemonen på nytt ved å kjøre følgende kommando:
sudo systemctl reload nginx
Installerer SSL-sertifikat
Når du har konfigurert omvendt proxy, vil nettstedet ditt være offentlig tilgjengelig. Det er imidlertid ikke sikkert da det ikke er noe SSL-sertifikat. Dermed er neste trinn å installere SSL-sertifikatet.
Sørg for at kjernen snap-daemon kjører i systemet ditt:
sudo snap install core
Installer certbot snap-pakken fra Electronic Frontier Foundation (EFF). Dette verktøyet lar deg be om et SSL-sertifikat som serveren din kan bruke til å kryptere forbindelser mellom verter.
sudo snap install certbot --classic
Test om certbot-pakken din kjører riktig ved å registrere den til EFF:
sudo certbot register --agree-tos -m you@your-email.invalid
Skaff et nytt SSL-sertifikat for Listmonk-installasjonen din ved å kjøre følgende kommando:
sudo certbot --nginx -d listmonk.myvpsserver.top
Få tilgang til og konfigurering av Listmonk
Åpne en nettleser, og naviger deretter til adressen til Listmonk-forekomsten din. Dette vil få opp en enkel nettside med en påloggingsknapp.

Klikk på «Logg inn»-knappen, og skriv deretter «listmonk» i både brukernavn og passord-feltene.

Å gjøre det vil laste inn hoveddashbordet for Listmonk-forekomsten din. Klikk på «Innstillinger»-alternativet på sidens venstre sidefelt.

Erstatt verdien av «Root URL»-tekstboksen med den fullstendige adressen til Listmonk-forekomsten din.

Klikk «Lagre» øverst til høyre på siden for å lagre den nye innstillingen.
Merk: Ikke glem å endre standard brukernavn og passord.
Koble en Gmail-konto til Listmonk
Logg på Gmail-kontoen din, og klikk deretter på brukerikonet øverst til høyre på siden.

Klikk «Administrer Google-kontoen din.»

Klikk på «Sikkerhet»-kategorien på sidens venstre sidefelt. Velg alternativet «2-trinns bekreftelse» på undersiden Sikkerhet.

Rull ned til bunnen av siden, og klikk deretter på «App-passord»-knappen.

Dette vil få opp en melding om å be deg om navnet på applikasjonen du vil koble til. Skriv «listmonk», og klikk deretter «Opprett.»
Siden vil da dukke opp et lite vindu med 16 tilfeldige tegn gruppert i firere. Kopier dette til en tekstfil og klikk deretter «Ferdig».

Gå tilbake til Listmonk-dashbordsiden, og klikk deretter på «Innstillinger»-alternativet på sidens venstre sidefelt.
Velg «SMTP»-fanen på sidens øvre linje. Klikk på «Gmail»-koblingen under rullegardinlisten «Auth Protocol».

Skriv inn hele e-postadressen til Gmail-kontoen din i «Brukernavn»-feltet.
Klikk på «Passord»-feltet, og skriv deretter inn strengen på 16 bokstaver du kopierte fra Gmail-nettstedet uten mellomrom.

Klikk «Lagre» for å bruke de nye SMTP-innstillingene.

Til slutt, gå til Generelt-fanen, og bytt ut verdien av tekstboksen «Standard ‘fra’-adresse» med adressen til Gmail-kontoen din.
Opprette et nytt Listmonk-nyhetsbrev
Gå til Listmonk Dashboard-siden din, klikk på kategorien «Lister» og klikk deretter på alternativet «Alle lister».

Velg «Ny»-knappen øverst til høyre på siden.

Fyll inn detaljene for den nye e-postlisten din, og klikk deretter på «Lagre».

Det er det. Du har fullført installasjonen av Listmonk.
Å være vertskap for ditt eget nyhetsbrev er bare en del av å lage din egen digitale plattform. Lær hvordan du kan utvide dette ved å være vert for en blogg i Linux ved å bruke Ghost og kjøre ditt eget Kanban-brett med Kanboard.
Bildekreditt: Nyhetsbrev – skrevet på en gammel skrivemaskin av 123RF. Alle endringer og skjermbilder av Ramces Red.
Støtt vårt arbeid ❤️
Hvis du likte denne artikkelen, vurder å gi en tips for å hjelpe oss med å fortsette å publisere kvalitetsinnhold.




















