Come creare la tua newsletter con Listmonk

Come creare la tua newsletter con Listmonk

Listmonk è una soluzione semplice e completa per newsletter e mailing list self-hosted per Linux. A differenza dei tradizionali programmi di mailing list, eccelle nel fornire una piattaforma snella, leggera e veloce. Qui ti mostriamo come installare Listmonk utilizzando Docker su Ubuntu e come iniziare a usarlo per inviare newsletter.

Vantaggi dell’utilizzo di Listmonk

Uno dei maggiori punti di forza di Listmonk è che può funzionare con quasi tutti i server di consegna della posta esterni su Internet. Ciò significa che puoi inviare le tue newsletter con un provider di posta ospitato come Gmail o con la tua configurazione di posta ospitata autonomamente .

Uno screenshot che mostra la panoramica di una nuova istanza di Listmonk.

Listmonk ha anche la possibilità di creare modelli di posta elettronica programmabili. Ciò consente di creare email personalizzate che possono adattarsi a seconda del contesto attraverso il quale l’utente riceve il messaggio.

Infine, Listmonk è dotato di un modulo di analisi intuitivo che ti consente di tenere traccia di ogni newsletter in esecuzione all’interno del programma. Può tenere traccia sia della quantità di clic ricevuti da ciascun messaggio sia delle visualizzazioni complessive ottenute da un’intera mailing list in un periodo di tempo.

Installazione di Listmonk

Ottenere Docker e Docker Compose

Presupposto: questo articolo presuppone che tu stia eseguendo Listmonk su un VPS sempre attivo. Inoltre, si presuppone anche che tu abbia già un nome di dominio con un record A e PTR che punta al tuo VPS.

Per iniziare, recupera la chiave del repository per i pacchetti Docker e Docker Compose:

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

Crea il nuovo file repository per i tuoi pacchetti Docker e Docker Compose:

sudo nano /etc/apt/sources.list.d/docker.list

Scrivi la seguente riga di codice all’interno del tuo nuovo file repository:

deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable

Aggiorna e aggiorna l’intero sistema Ubuntu eseguendo il seguente comando:

sudo apt update && sudo apt upgrade

Installa Docker Engine insieme a Docker Compose e alle sue dipendenze dei componenti:

sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin nginx git curl

Assicurati che il tuo utente attuale disponga delle autorizzazioni corrette per accedere ai file binari di Docker:

sudo usermod -aG docker ramces

Configurazione e distribuzione di Listmonk

Crea una nuova cartella per i tuoi file Docker all’interno della directory home del tuo utente attuale:

mkdir ~/listmonk && cd ~/listmonk

Crea un nuovo file di configurazione per la tua istanza di Listmonk:

nano. /config.toml

Incolla il seguente codice nel tuo nuovo file di configurazione:

[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 = ""

Salva il tuo nuovo file di configurazione, quindi crea il docker-compose.yml della tua istanza Listmonk:

nano. /docker-compose.yml

Incolla il seguente blocco di codice all’interno del tuo nuovo file. file yml. Questo è il file docker-compose.yml predefinito per Listmonk che ho modificato per funzionare con il mio fuso orario:

---
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

Distribuzione del contenitore Docker Listmonk

Esegui il seguente comando Docker per generare il file di database della tua istanza:

docker compose up db

Apri una nuova connessione SSH, quindi avvia il processo di compilazione per Listmonk eseguendo il binario “listmonk” all’interno del suo contenitore Docker:

docker compose run --rm app. /listmonk --install

Digita “Y”, quindi premi Enterquando lo script di build ti chiede di cancellare tutti i dati esistenti sul database in esecuzione. Ciò garantirà che il contenitore Listmonk sia pulito all’avvio.

Un terminale che mostra la richiesta di cancellazione del database per il contenitore Docker Listmonk.

Torna alla sessione SSH per il database della tua istanza, quindi premi Ctrl+ Cper terminare la sessione senza problemi.

Un terminale che mostra la chiusura regolare del database temporaneo.

Infine, riavvia tutti i contenitori Docker per Listmonk con le impostazioni corrette:

docker compose up -d app db

Creazione del proxy inverso Nginx

Anche se Listmonk ha iniziato a funzionare su un’istanza Docker, non è accessibile pubblicamente finché non hai configurato un proxy inverso per collegarti ad esso. Segui le istruzioni seguenti per configurare un proxy inverso Nginx.

Crea un nuovo file di configurazione del sito per la tua istanza di Listmonk:

sudo nano /etc/nginx/sites-available/listmonk

Incolla il seguente blocco di codice all’interno del nuovo file di configurazione del sito:

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;
}}

Collega il tuo nuovo file di configurazione da /etc/nginx/sites-available a /etc/nginx/sites-enabled:

sudo ln -s /etc/nginx/sites-available/listmonk /etc/nginx/sites-enabled/

Riavvia il demone del server Nginx eseguendo il seguente comando:

sudo systemctl reload nginx

Installazione del certificato SSL

Una volta configurato il proxy inverso, il tuo sito sarà accessibile pubblicamente. Tuttavia, non è sicuro poiché non esiste un certificato SSL. Pertanto, il passaggio successivo è installare il certificato SSL.

Assicurati che il demone snap principale sia in esecuzione nel tuo sistema:

sudo snap install core

Installa il pacchetto snap certbot dalla Electronic Frontier Foundation (EFF). Questa utility ti consentirà di richiedere un certificato SSL che il tuo server può utilizzare per crittografare le connessioni tra host.

sudo snap install certbot --classic

Verifica se il tuo pacchetto certbot funziona correttamente registrandolo su EFF:

sudo certbot register --agree-tos -m you@your-email.invalid

Ottieni un nuovo certificato SSL per la tua installazione Listmonk eseguendo il seguente comando:

sudo certbot --nginx -d listmonk.myvpsserver.top

Accesso e configurazione di Listmonk

Apri un browser web, quindi vai all’indirizzo della tua istanza di Listmonk. Verrà visualizzata una semplice pagina Web con un pulsante di accesso.

Uno screenshot che mostra la schermata di accesso di Listmonk.

Fare clic sul pulsante “Accedi”, quindi digitare “listmonk” nei campi Nome utente e Password.

Uno screenshot che mostra la richiesta delle credenziali.

In questo modo verrà caricata la dashboard principale per la tua istanza di Listmonk. Fai clic sull’opzione “Impostazioni” nella barra laterale sinistra della pagina.

Uno screenshot che evidenzia il

Sostituisci il valore della casella di testo “Root URL” con l’indirizzo completo della tua istanza di Listmonk.

Uno screenshot che evidenzia il

Fare clic su “Salva” nell’angolo in alto a destra della pagina per salvare la nuova impostazione.

Collegamento di un account Gmail a Listmonk

Accedi al tuo account Gmail, quindi fai clic sull’icona dell’utente nell’angolo in alto a destra della pagina.

Uno screenshot che evidenzia l'icona dell'utente in Gmail.

Fai clic su “Gestisci il tuo account Google”.

Uno screenshot che evidenzia il

Fai clic sulla categoria “Sicurezza” nella barra laterale sinistra della pagina. Seleziona l’opzione “Verifica in due passaggi” nella sottopagina Sicurezza.

Uno screenshot che evidenzia il

Scorri verso il basso fino alla fine della pagina, quindi fai clic sul pulsante “Password app”.

Uno screenshot che mostra il

Verrà visualizzato un messaggio che ti chiederà il nome dell’applicazione che desideri collegare. Digita “listmonk”, quindi fai clic su “Crea”.

La pagina farà quindi apparire una piccola finestra con 16 caratteri casuali raggruppati per quattro. Copialo in un file di testo, quindi fai clic su “Fine”.

Uno screenshot che mostra un esempio di password dell'app.

Torna alla pagina della dashboard di Listmonk, quindi fai clic sull’opzione “Impostazioni” nella barra laterale sinistra della pagina.

Seleziona la scheda “SMTP” nella barra superiore della pagina. Fai clic sul collegamento “Gmail” sotto la casella a discesa “Protocollo di autenticazione”.

Uno screenshot che evidenzia il collegamento al modello Gmail.

Digita l’indirizzo email completo del tuo account Gmail nel campo “Nome utente”.

Fai clic sul campo “Password”, quindi digita la stringa di 16 lettere che hai copiato dal sito Web di Gmail senza spazi.

Uno screenshot che mostra un collegamento Gmail completo.

Fai clic su “Salva” per applicare le nuove impostazioni SMTP.

Uno screenshot che evidenzia il

Infine, vai alla scheda Generale quindi sostituisci il valore della casella di testo “Indirizzo del mittente predefinito” con l’indirizzo del tuo account Gmail.

Creazione di una nuova newsletter Listmonk

Vai alla pagina della dashboard di Listmonk, fai clic sulla categoria “Elenchi”, quindi fai clic sull’opzione “Tutti gli elenchi”.

Uno screenshot che evidenzia il

Seleziona il pulsante “Nuovo” nell’angolo in alto a destra della pagina.

Uno screenshot che evidenzia il

Inserisci i dettagli della tua nuova mailing list, quindi fai clic su “Salva”.

Uno screenshot che mostra un elenco base di newsletter pubbliche.

Questo è tutto. Hai completato l’installazione di Listmonk.

Ospitare la tua newsletter è solo una parte della creazione della tua piattaforma digitale. Scopri come estendere tutto ciò ospitando un blog in Linux utilizzando Ghost ed esegui la tua bacheca Kanban web con Kanboard .

Credito immagine: Newsletter – scritta su una vecchia macchina da scrivere da 123RF. Tutte le modifiche e gli screenshot di Ramces Red.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *