Si vous avez besoin d'une application qui permette de gérer newsletter et liste de diffusion sans dépendre d'un tiers, vous serez peut-être content d'apprendre que non seulement vous pouvez très bien héberger ce service, mais qu'en plus, il est très simple d'utilisation.
Aujourd'hui nous allons parler de listmonk! Un gestionnaire de newsletter et de liste de diffusion, rapide et riche en fonctionnalités!
⚡ Caractéristiques
- Tableau de bord affichant un résumé d'informations pratiques.
- Listes de diffusion.
- Rebonds.
- Campagnes.
- Modèles.
💾 L'installation
- Créez votre compose.yml dans le dossier ou vous comptez installer listmonk:
nano compose.yml
- Et collez ça dedans:
x-app-defaults: &app-defaults
restart: unless-stopped
image: listmonk/listmonk:latest
ports:
- "9000:9000"
networks:
- listmonk
environment:
- TZ=Etc/UTC
x-db-defaults: &db-defaults
image: postgres:14-alpine
ports:
- "9432:5432"
networks:
- listmonk
environment:
- POSTGRES_PASSWORD=kKc5WMPAM2Q6s
- 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:
<<: *db-defaults
container_name: listmonk_db
volumes:
- type: volume
source: listmonk-data
target: /var/lib/postgresql/data
app:
<<: *app-defaults
container_name: listmonk_app
hostname: listmonk.monsite.com # Recommend using FQDN for hostname
depends_on:
- db
volumes:
- ./config.toml:/listmonk/config.toml
- ./uploads:/listmonk/uploads
networks:
listmonk:
volumes:
listmonk-data:
Veillez à modifier:
- listmonk.monsite.com => Remplacez listmonk.monsite.com par le domaine auquel sera lié listmonk, sans https://.
Passons à la création du fichier config:
nano config.toml
Collez ça dedans:
[app]
address = "0.0.0.0:9000"
admin_username = "goldorak"
admin_password = "MontMotDePasse"
# Database.
[db]
host = "listmonk_db"
port = 5432
user = "listmonk"
password = "kKc5WMPAM2Q6s"
# Ensure that this database has been created in Postgres.
database = "listmonk"
ssl_mode = "disable"
max_open = 25
max_idle = 25
max_lifetime = "300s"
# Optional space separated Postgres DSN params. eg: "application_name=listmonk gssencmode=disable"
params = ""
Nous allons lancer la base de données:
docker compose up db -d
Reste à configurer la base de données:
docker compose run --rm app ./listmonk --install
Veillez à changer:
- admin_username = "goldorak" => Remplacez goldorak par votre nom d'utilisateur. Conservez bien les guillemets.
- admin_password = "MontMotDePasse" => Remplacez MontMotDePasse par votre mot de passe utilisateur. Conservez bien les guillemets également.
On va déployer l'application:
docker compose up app -d
- Rendez-vous sur votre domaine:
https://listmonk.mondomaine.com
👤 Se connecter avec son compte administrateur
Cliquez sur Login:
Une fenêtre pop-up va apparaître:
Entrez les informations de votre compte administrateur et cliquez sur Connexion, vous serez redirigé vers le tableau de bord:
🇫🇷 Choisir la langue française
Cliquez dans le menu de gauche sur:
Choisissez la langue de votre choix, ici le français:
N'oubliez pas de sauver en cliquant en haut à droite sur:
Votre interface est dorénavant en français!
👥 Les abonnés & abonnées
Dans le menu de gauche, niveau abonnées & abonnées:
Vous pouvez ajouter vous-même une personne ou en importer.
Ajout manuel
Cliquez sur:
Remplissez le formulaire:
- E-mail => Indiquez l'adresse e-mail de la personne.
- Nom => Choisissez un nom.
- Statut => Soit la personne est activée ou bloquée.
- Listes => Sélectionnez la ou les listes.
Terminez en cliquant sur Enregistrer.
Par importation
Dans la partie Importer:
- Mode => Soit les personnes sont directement abonnées ou bloquées.
- Statut => Confirmé ou non.
- Écraser ? => Tout dépend si vous voulez remplacer nom et attributs des données existantes.
Cliquez dans la zone pour importer votre liste, le fichier doit-être au format CSV ou ZIP.
Veuillez lire les instructions suivantes:
⚙️ Quelques réglages importants des paramètres
Général
- Nom du site => Nommez votre instance.
- URL racine => Indiquez l'URL complète de votre site.
- URL du logo => Facultatif, personnalisez votre instance avec un logo en indiquant l'URL de celui-ci.
- URL du flavicon => Facultatif, personnalisez votre instance avec un flavicon en indiquant l'URL de celui-ci.
- Adresse e-mail `De :` par défaut => C'est l'adresse e-mail avec laquelle seront envoyés les e-mails.
- E-mails pour les notifications admin => Indiquez une adresse e-mail pour les notifications. Elle peut-être identique à celle par défaut.
N'oubliez pas de sauver en cliquant en haut à droite sur:
📫 Configurer le serveur mail
Si vous avez votre propre service mail, vous avez les informations nécessaires à entrer ci-dessous.
Mais vous pouvez également utiliser les serveurs mail de Google, Outlook, Infomaniak,.. Jetez un œil ici pour avoir les paramètres nécessaires:
Sous l'onglet SMTP, toujours situés dans les paramètres:
- Hôte => Indiquez l'hôte du serveur SMP.
- Port => Indiquez le port du serveur mail.
- Protocole => PLAIN
- Nom d'utilisateur => Indiquez votre adresse e-mail complète.
- Mot de passe => Indiquez le mot de passe du votre e-mail.
- TLS => Dans mon cas STARTTLS.
Quand tout est configuré, cliquez sur:
Indiquez votre adresse e-mail et cliquez sur Envoyer un e-mail:
Si vous avez ce message, c'est que c'est fonctionnel:
N'oubliez pas de bien tout enregistrer en cliquant sur:
🗒️ Créer une liste
Listes
Vous pouvez créer plusieurs listes suivant ce que vous avez à exprimer lors de vos compagnes de diffusion.
Créons une liste pour dire au monde combien on aime les pommes! Cliquez dans la partie gauche du menu, sur Listes, Toutes les listes:
Vous pouvez constater qu'il y a déjà des listes d'exemples:
Pour créer une liste, cliquez sur:
Remplissez le formulaire:
- Nom => Nommez votre liste.
- Type => Publique ou privée. Si la liste est publique, les personnes pourront choisir elles-mêmes la liste à laquelle elles veulent s'inscrire.
- Abonnement "opt-in" => L'option "opt-in double" envoie un e-mail à l'abonné·e demandant sa confirmation. Pour les listes en "opt-in double", les campagnes ne sont envoyées qu'aux abonné·es s'étant confirmé·es.
- Étiquettes => Si vous voulez créer une étiquette, taper le nom, faites Entrée sur votre clavier, ainsi de suite.
- Description => Ajoutez une description afin que
Cliquez sur Enregistrer pour terminer, elle a bien été ajoutée:
Formulaires
La partie formulaire sert à intégrer les inscririons à une newsletter sur une page Web. Il faudra cochez toutes les listes publiques auxquelles vous laissez la possibilité de s'inscrire:
Cochez la liste que vous souhaitez intégrer et copiez le code HTML, quand vous aurez intégré le code HTML, cela se présentera sous cette forme:
🗺️ Créer une campagne
Dans le menu de gauche Campagnes, Toutes les campagnes:
Cliquez sur:
Remplissez les formulaires:
Campagne
- Nom => Nommez votre campagne.
- Objet => Ajoutez un objet.
- Adresse d'envoi => Sélectionnez l'adresse e-mail pour envoyer la campagne.
- Listes => Si vous avez plusieurs listes, sélectionnez celle souhaitée.
- Modèle => Pour l'exemple on va se baser sur celle par défaut. Vous pouvez en créer de nouvelles dans la partie Modèles.
- Service messagerie => email.
- Étiquettes => Ajoutez une éventuellement une étiquette.
- Envoyer plus tard => Vous pouvez programmer la date et l'heure pour l'envoi automatique.
Cliquez sur Continuer.
Contenu
C'est ici qu'il va falloir créer proprement dit votre newsletter. Vous pouvez ajouter des images, un fichier audio, vidéo,...
- Format => Choisissez l'éditeur de texte avec lequel vous allez créer le contenu de la newsletter.
Quand vous êtes satisfait, cliquez sur:
Votre campagne est prête à être envoyée!
D'ailleurs, faisons un test, cliquez sur la 🚀 et confirmez votre choix:
Le processus commence:
C'est terminé: