ListMonk installieren: Unterschied zwischen den Versionen

Aus Hostsharing Wiki
Zur Navigation springen Zur Suche springen
(Erweiterung der Installationsanleitung)
 
Zeile 20: Zeile 20:
* Eine Datenbank anlegen
* Eine Datenbank anlegen
* Mit [[systemd]] wird das Programm als Dienst gestartet. Hierzu wird das Verzeichnis <code>~/.config/systemd/user/</code> erstellt und eine .service Datei angelegt:
* Mit [[systemd]] wird das Programm als Dienst gestartet. Hierzu wird das Verzeichnis <code>~/.config/systemd/user/</code> erstellt und eine .service Datei angelegt:
[Unit]
 
Description=Listmonk
<syntaxhighlight lang="ini" line>
[Unit]
[Service]
Description=Listmonk
Type=simple
 
Restart=on-abort
[Service]
WorkingDirectory=/home/pacs/xyz00/users/newsletter
Type=simple
# --config mit vollständigem Pfad zum Configfile falls nicht im WorkingDirectory
Restart=on-abort
ExecStart=/home/pacs/xyz00/users/newsletter/bin/listmonk
WorkingDirectory=/home/pacs/xyz00/users/newsletter
# --config mit vollständigem Pfad zum Configfile falls nicht im WorkingDirectory
[Install]
ExecStart=/home/pacs/xyz00/users/newsletter/bin/listmonk
WantedBy=default.target
 
[Install]
WantedBy=default.target
</syntaxhighlight>


* Start und aktivieren von Autostart mittels <code>systemctl enable --now --user listmonk</code>
* Start und aktivieren von Autostart mittels <code>systemctl enable --now --user listmonk</code>
* Beispiel Webserver--Konfiguration unter <code>doms/meine-domain/htdocs-ssl/.htaccess</code>  
* Beispiel Webserver--Konfiguration unter <code>doms/meine-domain/htdocs-ssl/.htaccess</code>  
DirectoryIndex disabled
 
RewriteEngine On
<syntaxhighlight lang="apache" line>
RewriteBase /
DirectoryIndex disabled
RewriteCond %{REQUEST_FILENAME} !-f
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-l
RewriteBase /
RequestHeader set X-Forwarded-Proto "https"
RewriteCond %{REQUEST_FILENAME} !-f
# Port entsprechend der config.toml nach Absprache mit Service s.o.
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.*) http://127.0.0.1:9000/$1 [proxy,last]
RequestHeader set X-Forwarded-Proto "https"
# Port entsprechend der config.toml nach Absprache mit Service s.o.
RewriteRule ^(.*) http://127.0.0.1:9000/$1 [proxy,last]
</syntaxhighlight>


=== Installation mit Ansible Skript ===
=== Installation mit Ansible Skript ===

Aktuelle Version vom 12. Juni 2024, 11:23 Uhr

ListMonk

ListMonk [1] ist ein Newsletter-Manager zum Selbsthosten, und steht unter der Open Source Lizenz AGPLv3.

Monk hat in diesem Fall nichts mit einem Mönch zu tun, sondern ist eine versteckte Anspielung auf Monkey, da ListMonk eine Alternative zu MailChimp (Chimpanse) ist.

Achtung: Listmonk wirbt damit, Newsletter- und Mailinglisten-Manager zu sein. Laut Fehlerbericht ist das Tool aber lediglich für Einweg-Kommunikation (Newsletter) vorgesehen.

Zur Technik

ListMonk ist in Go geschrieben, und wird als ein einziges Binary (Programm) installiert. Man muss im Shared Webspace bei Hostsharing einen Service dazu buchen, oder man setzt es auf einem Managed Server von Hostsharing ein.

Im Hintergrund wird PostgreSQL als Datenbank benutzt.

ListMonk bietet Anmeldungen per Double-Opt-In, und es gibt auch eine API für die Integration mit CRM/ERP Systemen (https://listmonk.app/docs/apis/apis/).

Zur Installation

Die Installation ist recht einfach: https://listmonk.app/docs/installation/

  • Das Programm beispielsweise auf Github herunterladen und entpacken
  • Vorher den Hostsharing Service um eine freie Port Nummer fragen.
  • Eine Datenbank anlegen
  • Mit systemd wird das Programm als Dienst gestartet. Hierzu wird das Verzeichnis ~/.config/systemd/user/ erstellt und eine .service Datei angelegt:
[Unit]
Description=Listmonk

[Service]
Type=simple
Restart=on-abort
WorkingDirectory=/home/pacs/xyz00/users/newsletter
# --config mit vollständigem Pfad zum Configfile falls nicht im WorkingDirectory
ExecStart=/home/pacs/xyz00/users/newsletter/bin/listmonk

[Install]
WantedBy=default.target
  • Start und aktivieren von Autostart mittels systemctl enable --now --user listmonk
  • Beispiel Webserver--Konfiguration unter doms/meine-domain/htdocs-ssl/.htaccess
DirectoryIndex disabled
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RequestHeader set X-Forwarded-Proto "https"
# Port entsprechend der config.toml nach Absprache mit Service s.o.
RewriteRule ^(.*) http://127.0.0.1:9000/$1 [proxy,last]

Installation mit Ansible Skript

Es gibt ein Ansible Skript für Hostsharing [2], das die Installation automatisiert vornimmt, und schon den SMTP und POP Zugang konfiguriert.

Dort kann man sicherlich auch Feinheiten der Installation abschauen, wenn man ListMonk manuell installieren will.

Zur Bedienung

Hier ist ein Bildschirmfoto zur Einrichtung von SMTP für den Versand der E-Mails:

ListMonk SMTPSetup.png


Hier ist ein Bildschirmfoto zur Generierung des Formulars zur Anmeldung für einen Newsletter:

ListMonk SubscriptionForm.png

Links