Wekan Board (Debian): Unterschied zwischen den Versionen

(Die Seite wurde neu angelegt: „Dieser Artikel beschäftigt sich mit Installation von Wekan Board auf einem Server. Wekan Board kann auf mehreren Wegen installiert werden: * Production: Sna…“)
 
 
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt)
Zeile 1: Zeile 1:
Dieser Artikel beschäftigt sich mit Installation von Wekan Board auf einem Server.
+
Dieser Artikel beschäftigt sich mit der Installation von Wekan Board auf einem Linux Server mittels eines Snap-Pakets.
 
 
Wekan Board kann auf mehreren Wegen installiert werden:
 
 
 
* Production: Snap-Paket - Autoupdate
 
* Production: Docker - No Autoupdate
 
* Production: Sandstorm-Plattform
 
 
 
Quelle: https://github.com/wekan/wekan/wiki/Platforms
 
 
 
== Installation mit Snap ==
 
 
 
Anleitung, um Wekan über den Snap-Paketmanager zu installieren.
 
  
 
Mit Snap-Paketen kann man regelmäßige automatische Updates durchgeführt werden.
 
Mit Snap-Paketen kann man regelmäßige automatische Updates durchgeführt werden.
  
Quellen: https://github.com/wekan/wekan-snap/wiki/Install
+
Die Installation von Docker oder auf der Sandstorm-Plattform sind nicht Inhalt dieses Artikels.
  
=== Voraussetzungen ===
+
== Voraussetzungen ==
  
  apt-get install snap
+
  apt-get install snapd
  
=== Installation ===
+
== Installation ==
  
 
  snap install wekan
 
  snap install wekan
Zeile 45: Zeile 33:
 
  systemctl restart snap.wekan.wekan
 
  systemctl restart snap.wekan.wekan
  
=== Konfiguration Updates ===
+
== Konfiguration Updates ==
  
 
Updates zwischen 2:00 und 4:00 Uhr einrichten:
 
Updates zwischen 2:00 und 4:00 Uhr einrichten:
Zeile 55: Zeile 43:
 
  snap refresh
 
  snap refresh
  
=== Konfiguration E-Mails ===
+
== Konfiguration E-Mails ==
  
 
  sudo snap set wekan mail-url='smtps://user:pass@mailserver.example.com:453'
 
  sudo snap set wekan mail-url='smtps://user:pass@mailserver.example.com:453'
 
  sudo snap set wekan mail-from='Wekan Boards <support@example.com>'
 
  sudo snap set wekan mail-from='Wekan Boards <support@example.com>'
  
=== Konfiguration Apache als Proxy ===
+
== Konfiguration Apache als Proxy ==
  
 
Der Wekan-Server kann nur dann über Port 80 oder 443 direkt zum Internet hin publiziert werden, wenn auf der Maschine keine weiteren Webseiten gehostet werden sollen.
 
Der Wekan-Server kann nur dann über Port 80 oder 443 direkt zum Internet hin publiziert werden, wenn auf der Maschine keine weiteren Webseiten gehostet werden sollen.
Zeile 114: Zeile 102:
 
  systemctl restart apache2
 
  systemctl restart apache2
  
=== Letsencrypt einrichten ===
+
== Letsencrypt einrichten ==
  
 
In der obigen Konfiguration wird Wekan über einen Proxy in Apache eingebunden.
 
In der obigen Konfiguration wird Wekan über einen Proxy in Apache eingebunden.
Zeile 141: Zeile 129:
 
* https://httpd.apache.org/docs/current/mod/mod_proxy.html#proxypass
 
* https://httpd.apache.org/docs/current/mod/mod_proxy.html#proxypass
  
=== App aktivieren / deaktivieren ===
+
== App aktivieren / deaktivieren ==
  
 
  snap disable wekan
 
  snap disable wekan
 
  snap enable wekan
 
  snap enable wekan
  
=== Dienststeuerung ===
+
== Dienststeuerung ==
  
 
MongoDB service:
 
MongoDB service:
Zeile 155: Zeile 143:
  
 
  systemctl status snap.wekan.wekan
 
  systemctl status snap.wekan.wekan
 +
 +
== Backup ==
 +
 +
todo: Siehe https://github.com/wekan/wekan-snap/wiki/Backup-and-restore
 +
 +
== Troubleshooting ==
 +
 +
=== Wekan-Befehle funktionieren nicht ===
 +
 +
In den Umgebungsvariablen, die mit <code>env</code> angezeigt werden können, muss der Pfad zu <code>/snap/bin</code> enthalten sein.
 +
 +
Dieser wird automatisch hinzugefügt, jedoch muss ggf. das Betriebssystem nach der Installation von Wekan erst neu gestartet werden.
 +
 +
== Quellen ==
 +
 +
https://github.com/wekan/wekan/wiki/Platforms
 +
https://github.com/wekan/wekan-snap/wiki/Install
 +
https://github.com/wekan/wekan-snap/wiki/Backup-and-restore
 +
  
 
[[Category:Linux]]
 
[[Category:Linux]]

Aktuelle Version vom 30. September 2020, 22:35 Uhr

Dieser Artikel beschäftigt sich mit der Installation von Wekan Board auf einem Linux Server mittels eines Snap-Pakets.

Mit Snap-Paketen kann man regelmäßige automatische Updates durchgeführt werden.

Die Installation von Docker oder auf der Sandstorm-Plattform sind nicht Inhalt dieses Artikels.

Voraussetzungen

apt-get install snapd

Installation

snap install wekan

Dies installiert zwei SystemD-Services:

  • snap.wekan.wekan
  • snap.wekan.mongodb

Konfiguration:

snap set wekan root-url="https://example.com/something"
snap set wekan port='3001'

Parameter root-url ist für korrekte Wekan-interne Links notwendig.

Parameter port ist für Betrieb auf einem Non-Standard-Port notwendig, z.B. wenn man Apache auf den Standard-HTTP-Ports laufen lässt, und Wekan auf dem gleichen Server nutzen möchte. In diesem Szenario lässt man Wekan auf einem alternativen Port laufen. In Apache wird ein Virtual Host konfiguriert, in dem Wekan per Proxy eingehängt wird, und Anfragen von Apache werden an den Port weiter geleitet.

Dieses Szenario wird in dieser Anleitung auch genutzt.

Wekan-Server neu starten:

systemctl restart snap.wekan.wekan

Konfiguration Updates

Updates zwischen 2:00 und 4:00 Uhr einrichten:

snap set core refresh.schedule=02:00-04:00

Konfiguration neu laden:

snap refresh

Konfiguration E-Mails

sudo snap set wekan mail-url='smtps://user:pass@mailserver.example.com:453'
sudo snap set wekan mail-from='Wekan Boards <support@example.com>'

Konfiguration Apache als Proxy

Der Wekan-Server kann nur dann über Port 80 oder 443 direkt zum Internet hin publiziert werden, wenn auf der Maschine keine weiteren Webseiten gehostet werden sollen.

Wenn andere Webseiten gehostet werden, kann Wekan nicht auf diesem Port publiziert werden, sondern muss auf einem anderen Port publiziert werden. In diesem Szenario kann Wekan z.B. als Subdomain eingebunden werden, und Anfragen von via Proxy an Wekan weitergeleitet werden.

Nachfolgende Anleitung zeigt beispielhaft, wie dies für den Apache Webserver eingerichtet werden kann.

Dabei wird der Wekan-Server, der auf localhost (127.0.0.1) auf Port 3001 läuft als Subdomain des Apache-Severs über einen virtuellen Host eingebunden.

Siehe Webserver_installieren_(Debian)#Proxy aktivieren

a2enmod proxy proxy_http proxy_wstunnel
sudo systemctl restart apache2

Konfiguration des Webservers:

<IfModule mod_ssl.c>                                                                                               
    <VirtualHost *:443>                                                                                            
            ServerName <subdomain.domain.tld>
            ServerAdmin webmaster@localhost

            SSLEngine on
            # SSLCertificateFile  /etc/ssl/cert-selfsigned.pem
            SSLCertificateFile  /etc/letsencrypt/live/<subdomain.domain.tld>/fullchain.pem
            SSLCertificateKeyFile   /etc/letsencrypt/live/<subdomain.domain.tld>/privkey.pem

            ServerSignature Off

            ProxyPassMatch   ^/(sockjs\/.*\/websocket)$ ws://127.0.0.1:3001/$1
            ProxyPass        /.well-known/acme-challenge !
            ProxyPass        / http://127.0.0.1:3001/
            ProxyPassReverse / http://127.0.0.1:3001/

            Alias /.well-known/acme-challenge /var/www/html/.well-known/acme-challenge

            <Directory "/var/www/html/.well-known/acme-challenge">
                Options None
                AllowOverride None
                Require all granted
                AddDefaultCharset off
            </Directory>
    </VirtualHost>
</IfModule>

Seite aktivieren:

a2ensite <subdomain.domain.tld-Konfigfile>

Apache neu starten:

systemctl restart apache2

Letsencrypt einrichten

In der obigen Konfiguration wird Wekan über einen Proxy in Apache eingebunden.

Für die Challange in Letsencrypt ist jedoch Zugriff auf die Domainhinhalte notwendig.

Für Webroot-Challange können Seitenteile, wie z.B. .well-known/acme-challange explizit vom Proxy ausgeschlossen werden.

Die ProxyPass-Parameter werden in der Reihenfolge in der Konfig-Datei geladen. Daher werden darin folgende Zeilen eingefügt:

ProxyPass        /.well-known/acme-challenge !

Alias /.well-known/acme-challenge /var/www/html/.well-known/acme-challenge

<Directory "/var/www/html/.well-known/acme-challenge">
    Options None
    AllowOverride None
    Require all granted
    AddDefaultCharset off
</Directory>

Quellen:

App aktivieren / deaktivieren

snap disable wekan
snap enable wekan

Dienststeuerung

MongoDB service:

systemctl status snap.wekan.mongodb

Wekan service:

systemctl status snap.wekan.wekan

Backup

todo: Siehe https://github.com/wekan/wekan-snap/wiki/Backup-and-restore

Troubleshooting

Wekan-Befehle funktionieren nicht

In den Umgebungsvariablen, die mit env angezeigt werden können, muss der Pfad zu /snap/bin enthalten sein.

Dieser wird automatisch hinzugefügt, jedoch muss ggf. das Betriebssystem nach der Installation von Wekan erst neu gestartet werden.

Quellen

https://github.com/wekan/wekan/wiki/Platforms https://github.com/wekan/wekan-snap/wiki/Install https://github.com/wekan/wekan-snap/wiki/Backup-and-restore