Wie man Wekan Trello-ähnliches Kanban auf Ubuntu 16.04 installiert.

Wekan ist eine Open Source Trello-ähnliche Kanbantafel, die auf dem Meteor Javascript Framework basiert. Es ist ein webbasiertes Management-Tool, mit dem Sie ein Board für Ihre Projektzusammenarbeit erstellen können. Mit dem Wekan-Board müssen Sie nur Ihr Mitglied in den Vorstand einladen und schon kann es losgehen. Auf dem wekan-Board können Sie eine kartenbasierte Aufgaben- und Aufgabenverwaltung erstellen und diese dann Ihrem Mitglied zuweisen.

In diesem Tutorial zeigen wir Ihnen, wie Sie Wekan Trello-ähnliches Kanban auf Ubuntu 16.04 Schritt für Schritt installieren und konfigurieren. Wir werden MongoDB als Datenbank und den Nginx-Webserver als Reverse-Proxy für die Wekan-Anwendung verwenden. Dieses Tutorial behandelt einige Themen im Detail, darunter die Sicherung der MongoDB-Datenbank und die Konfiguration von Nginx als Reverse Proxy.

Voraussetzungen

  • Ubuntu 16.04 Server
  • Root-Rechte

Was wir tun werden

  1. Update-Repository und Upgrade-System
  2. Nodejs installieren
  3. MongoDB installieren und konfigurieren
  4. Wekan installieren
  5. Wekan als Dienst auf Ubuntu 16.04 ausführen
  6. Nginx als Reverse Proxy für Wekan installieren und konfigurieren
  7. Prüfung

Schritt 1 – Update- und Upgrade-System

Verbinden Sie sich mit dem Server über Ihr ssh-Login.

ssh root@192.168.33.10

Aktualisieren Sie nun alle Repositories auf dem System und aktualisieren Sie dann alle Pakete mit den folgenden apt-Befehlen.

sudo apt update
sudo apt upgrade

Schritt 2 – Nodejs installieren

Wekan ist eine auf nodejs basierende Anwendung und erfordert nodejs Version 4.8. In diesem Tutorial werden wir nodejs nicht aus dem Ubuntu-Repository installieren, sondern nodejs 4.8 mit dem nvm Node Version Manager.

Bevor Sie nodejs installieren, fügen Sie mit dem folgenden Befehl einen neuen Systembenutzer ‚wekan‘ hinzu.

useradd -m -s /bin/bash wekan
passwd wekan

Melden Sie sich als ‚wekan‘ Benutzer an, laden Sie dann das nvm-Installationsskript herunter und führen Sie es aus.

su - wekan
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash

Der Befehl installiert nvm unter dem Benutzer’wekan‘ und fügt der Konfigurationsdatei ‚.bashrc‘ eine neue Konfiguration hinzu. Laden Sie die Datei .‘ bashrc‘ neu.

source ~/.bashrc

Testen Sie nun mit dem Befehl nvm wie unten beschrieben.

command -v nvm
nvm --version

Und Sie sehen die auf dem System installierte nvm ‚0.33.8‘.

Als nächstes installieren Sie nodejs 4.8 mit dem nvm Node Version Manager.

Führen Sie die unten aufgeführten nvm-Installationsbefehle aus.

nvm install v4.8
nvm use node

Überprüfen Sie nach Abschluss der Installation die Knotenversion.

node -v

Und Sie sollten nodejs 4.8 wie auf dem Ubuntu 16.04 unter dem Benutzer’wekan‘ installiert bekommen.

Node.js installieren

Schritt 3 – MongoDB installieren und konfigurieren

In diesem Schritt werden wir die MongoDB NoSQL-Datenbank installieren und konfigurieren. Wekan benötigt MongoDB 3.2.x für seine Installation.

Fügen Sie den MongoDB-Schlüssel sowie das Repository dem System hinzu, indem Sie den folgenden Befehl ausführen.

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list

MongoDB installieren und konfigurieren

Aktualisieren Sie nun das Repository und installieren Sie MongoDB mit dem Befehl apt.

sudo apt update
sudo apt install -y mongodb-org mongodb-org-server mongodb-org-shell mongodb-org-mongos mongodb-org-tools

Nachdem die Installation abgeschlossen ist, starten Sie den MongoDB-Dienst und ermöglichen Sie ihm, ihn jedes Mal beim Systemstart zu starten.

sudo systemctl start mongod
sudo systemctl enable mongod

MongoDB 3.2 wurde auf dem System Ubuntu 16.04 installiert.

Als nächstes müssen wir die MongoDB-Authentifizierung konfigurieren. Melden Sie sich in der Mongoshell an und erstellen Sie einen neuen Superuser „admin“.

Melden Sie sich in der Mongoshell an.

mongo

Erstellen Sie einen neuen ‚admin‘-Benutzer mit dem Passwort ‚MyAdminPassword‘ und setzen Sie die Rolle auf ‚root‘.

Führen Sie die folgenden MongoDB-Abfragen aus.

db.createUser(
  {
    user: "admin",
    pwd: "MyAdminPassword",
    roles: [ { role: "root", db: "admin" } ]
  }
)

Der MongoDB-Administrator wurde angelegt.

Nun müssen wir die Konfigurationsdatei ‚/etc/mongod.conf‘ bearbeiten, um die Authentifizierung zu aktivieren.

Bearbeiten Sie die Konfigurationsdatei ‚mongod.conf‘ mit vim.

vim /etc/mongod.conf

Entkommentieren Sie die Zeile „security“ und fügen Sie die Konfiguration wie unten gezeigt hinzu.

security:
  authorization: enabled

Speichern und beenden.

Starten Sie nun den MongoDB-Dienst neu.

systemctl restart mongod

Die MongoDB-Authentifizierung wurde aktiviert.

MongoDB-Authentifizierung

Als nächstes müssen wir eine neue Datenbank und einen neuen Benutzer für Wekan erstellen. Wir werden eine neue Datenbank namens’wekan‘ mit dem Benutzer’wekan‘ mit dem Passwort’WekanPassword‘ erstellen.

Melden Sie sich in der Mongoshell als Admin-Benutzer an.

mongo -u admin -p

Geben Sie das Admin-Passwort’MyAdminPassword‘ ein.

Und wenn Sie die Mongo-Shell erhalten, führen Sie die folgenden MongoDB-Abfragen aus.

use wekan
db.createUser(
    {
      user: "wekan",
      pwd: "WekanPassword",
      roles: ["readWrite"]
    }
 )

Die Datenbank und der Benutzer für die wekan-Installation wurden angelegt.

Datenbank und Benutzer für die Wekan-Installation

Schritt 4 – Wekan installieren

Melden Sie sich als „wekan“-Benutzer an.

su - wekan

Laden Sie die neueste Version wekan Quellcode mit dem Befehl wget herunter und extrahieren Sie ihn.

wget https://github.com/wekan/wekan/releases/download/v0.63/wekan-0.63.tar.gz
tar xf wekan-0.63.tar.gz

Und du bekommst ein neues Verzeichnis namens ‚bundle‘. Gehen Sie zu diesem Verzeichnis und installieren Sie die Wekan-Abhängigkeiten mit dem Befehl npm, wie unten gezeigt.

cd bundle/programs/server
npm install

Nachdem die Installation abgeschlossen ist, erhalten Sie das Ergebnis wie unten gezeigt.

Wekan installieren

Als nächstes werden wir versuchen, Wekan auf dem System auszuführen.

Führen Sie die folgenden Befehle aus, um die Umgebungsvariablen für die Wekan-Anwendung einzurichten.

export MONGO_URL='mongodb://wekan:WekanPassword@127.0.0.1:27017/wekan?authSource=wekan'
export ROOT_URL='http://192.168.33.10/'
export MAIL_URL='smtp://user:pass@mail.hakase-labs.co:25/'
export MAIL_FROM='wekan@hakase-labs.co'
export PORT=8000

Gehen Sie nun in das Verzeichnis’bundle‘ und führen Sie die Anwendung Wekan Node.js aus.

cd ~/bundle
node main.js

wekan nodejs Anwendung

Der Wekan-Server läuft nun unter Port 8000. Öffnen Sie Ihren Webbrowser und geben Sie Ihre Serveradresse mit Port 8000 ein. Meiner isthttp://192.168.33.10:8000/

Und Sie erhalten die Wekan-Login-Seite wie unten gezeigt.

Wekan Login

Wekan ist nun erfolgreich auf dem Ubuntu 16.04 installiert.

Schritt 5 – Wekan als Dienst konfigurieren

Wir werden die Wekan-Anwendung als Dienst auf dem Ubuntu-System ausführen. Daher müssen wir eine neue Servicedatei unter dem Verzeichnis systemd erstellen.

Bevor wir die Wekan-Servicedatei erstellen, müssen wir die Umgebungsvariablendatei erstellen.

Melden Sie sich als „wekan“-Benutzer an.

su - wekan

Gehen Sie in das Verzeichnis’bundle/‘ und erstellen Sie eine neue Umgebungsvariablen-Datei ‚.env‘ mit vim.

cd bundle/
vim .env

Fügen Sie dort die folgende Konfiguration ein.

MONGO_URL='mongodb://wekan:WekanPassword@127.0.0.1:27017/wekan?authSource=wekan'
 ROOT_URL='http://wekan.hakase-labs.co'
 MAIL_URL='smtp://user:pass@mail.hakase-labs.co:25/'
 MAIL_FROM='wekan@hakase-labs.co'
 PORT=8000
 HTTP_FORWARDED_COUNT=1

Speichern und beenden.

Kehren Sie nun zu Ihrem Root-Terminal zurück und gehen Sie in das Verzeichnis’/etc/systemd/system‘ und erstellen Sie dann eine neue Servicedatei’wekan.service‘.

cd /etc/systemd/system/
vim wekan.service

Fügen Sie dort die folgende Konfiguration ein.

[Unit]
 Description=Wekan Server
 After=syslog.target
 After=network.target
[Service]
Type=simple
Restart=on-failure
StartLimitInterval=86400
StartLimitBurst=5
RestartSec=10
ExecStart=/home/wekan/.nvm/versions/node/v4.8.7/bin/node bundle/main.js
EnvironmentFile=/home/wekan/bundle/.env
ExecReload=/bin/kill -USR1 $MAINPID
RestartSec=10
User=wekan
Group=wekan
WorkingDirectory=/home/wekan
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=Wekan

[Install]
WantedBy=multi-user.target

Speichern und beenden.

Laden Sie das System neu mit dem Befehl systemctl.

systemctl daemon-reload

Starten Sie den Wekan-Dienst und aktivieren Sie ihn so, dass er jedes Mal beim Systemstart gestartet werden kann.

systemctl start wekan
systemctl enable wekan

Wekan Service

Überprüfen Sie nun den Wekan-Dienst mit den folgenden Befehlen.

netstat -plntu
systemctl status wekan

Und im Folgenden die Ergebnisse.

Wekan started

Wekan läuft nun unter Port 8000 und läuft als Dienst auf dem System Ubuntu 16.04.

Schritt 6 – Nginx als Reverse-Proxy für Wekan installieren

In diesem Schritt installieren wir den Nginx-Webserver und konfigurieren ihn als Reverse-Proxy für den Wekan-Dienst, der unter Port 8000 läuft.

Installieren Sie den Nginx-Webserver aus dem Ubuntu-Repository mit dem folgenden Befehl apt.

sudo apt install nginx -y

Nachdem die Installation abgeschlossen ist, gehen Sie in das Verzeichnis ‚/etc/nginx/sites-available‘ und erstellen Sie eine neue virtuelle Hostdatei ‚wekan‘.

cd /etc/nginx/sites-available
vim wekan

Fügen Sie dort die folgende virtuelle Host-Konfiguration ein.

server {
     server_name wekan.hakase-labs.co;
     listen 80;
access_log /var/log/nginx/wekan-access.log;
error_log /var/log/nginx/wekan-error.log;

location / {
proxy_set_header   X-Real-IP $remote_addr;
proxy_set_header   Host      $host;
proxy_http_version 1.1;
proxy_set_header   Upgrade $http_upgrade;
proxy_set_header   Connection 'upgrade';
proxy_cache_bypass $http_upgrade;
proxy_pass         http://127.0.0.1:8000;
}

}

Speichern und beenden.

Aktivieren Sie nun den virtuellen Host und führen Sie die Test-Nginx-Konfiguration aus, und stellen Sie sicher, dass kein Fehler vorliegt.

ln -s /etc/nginx/sites-available/wekan /etc/nginx/sites-enabled/
nginx -t

Unter der Annahme, dass alles gut gelaufen ist, starten Sie nun den Nginx-Dienst neu und ermöglichen Sie ihm, ihn jedes Mal beim Systemstart zu starten.

systemctl restart nginx
systemctl enable nginx

Nginx konfigurieren und starten

Überprüfen Sie nun den HTTP-Port mit dem Befehl netstat und stellen Sie sicher, dass er sich im Zustand’LISTEN‘ befindet.

netstat -plntu

Nginx hat begonnen

Die Konfiguration des virtuellen Nginx-Hosts für die Anwendung Wekan Node.js ist abgeschlossen.

Schritt 7 – Prüfung

Öffnen Sie Ihren Webbrowser und geben Sie die Wekan-Installations-URL in die Adressleiste ein, meine lautethttp://wekan.hakase-labs.co/

Sie werden dann auf die Login-Seite weitergeleitet, klicken Sie auf den Link „Registrieren“.

Wekan - Sign in

Geben Sie nun Ihren Benutzernamen, Ihre E-Mail-Adresse, Ihr Passwort und Ihren Einladungscode ein.

Benutzername und Passwort

Klicken Sie auf die blaue Schaltfläche „Registrieren“.

Und Sie werden wahrscheinlich die Meldung „Internal Server Error“ erhalten – lassen Sie sie und gehen Sie zurück zu Ihrem Terminal. Denn wir werden den ersten Benutzer vom Terminal aus aktivieren.

Öffnen Sie Ihr Terminal und melden Sie sich als „wekan“-Benutzer in der Mongoshell an.

mongo -u wekan -p --authenticationDatabase "wekan"

Aktivieren Sie nun den Benutzer über die untenstehenden Abfragen.

use wekan
db.users.update({username:'hakase'},{$set:{isAdmin:true}})

Verlassen Sie die Mongoschale.

Mongoschale

Zurück zu Ihrem Browser und öffnen Sie erneut die Wekan URL-Installation.

http://wekan.hakase-labs.co/

Geben Sie Ihren Benutzernamen und Ihr Passwort ein und klicken Sie dann auf die Schaltfläche „Anmelden“.

Anmelden

Und jetzt sollten Sie sich das Wekan User Dashboard besorgen.

Wekan Dashboard

Nachfolgend sehen Sie das wekan-Beispielprojekt.

wekan Musterprojekt

Die Wekan-Installation auf Ubuntu 16.04 mit MongoDB und Nginx Webserver wurde erfolgreich abgeschlossen.

Referenz

Das könnte dich auch interessieren …