Taiga ist ein kostenloses, einfaches und dennoch leistungsstarkes Open-Source-Projektmanagement-Tool für Start-ups, agile Entwickler und Designer. Es unterstützt Teams, die sowohl in Scrum- als auch in Kanban-Frameworks agil arbeiten. Das Frontend ist in JavaScript geschrieben, während das Backend in Python und Django geschrieben ist. Es ist eine sehr leistungsstarke und vollständig anpassbare Anwendung, die sowohl einfache als auch komplexe Projekte für Entwickler und Teams bewältigen kann. Es kann problemlos in viele Dienste integriert werden, darunter Kanban, Scrum, Talky.io und Appear.in.
In diesem Tutorial zeigen wir Ihnen, wie Sie das Taiga Project Management Tool auf einem Ubuntu 20.04-Server installieren.
Voraussetzungen
- Ein Server mit Ubuntu 20.04.
- Ein gültiger Domainname, auf den Ihre Server-IP verweist.
- Ein Root-Passwort wird auf dem Server konfiguriert.
Erste Schritte
Aktualisieren Sie zunächst Ihre Systempakete mit dem folgenden Befehl auf die neueste Version:
apt-get update -y
Nachdem alle Pakete aktualisiert wurden, installieren Sie andere für Taiga erforderliche Abhängigkeiten, indem Sie den folgenden Befehl ausführen:
apt-get install git gnupg2 pwgen automake wget curl gettext python3 virtualenvwrapper python3-dev python3-pip python3-dev libssl-dev tmux build-essential libgdbm-dev binutils-doc autoconf flex gunicorn bison libjpeg-dev libzmq3-dev libfreetype6- dev zlib1g-dev libncurses5-dev libtool libxslt-dev libxml2-dev libffi-dev
Als Nächstes müssen Sie einen vollständig qualifizierten Hostnamen für Ihr System einrichten. Sie können es mit dem folgenden Befehl einstellen:
hostnamectl set-hostname taiga.example.com
Als nächstes müssen Sie Ihren Hostnamen mit Ihrer IP-Adresse verknüpfen. Sie können dies tun, indem Sie die Datei /etc/hosts:
bearbeitennano /etc/hosts
Fügen Sie die folgenden Zeilen hinzu:
your-server-ip taiga.example.com
Speichern und schließen Sie die Datei, wenn Sie fertig sind.
Installieren Sie Node.js
Als nächstes müssen Sie Node.js auf Ihrem System installieren. Standardmäßig ist die neueste Version von Node.js nicht im Standard-Repository von Ubuntu 20.04 verfügbar. Sie müssen also das Node.js-Repository zu Ihrem System hinzufügen. Sie können es mit dem folgenden Befehl hinzufügen:
curl -sL https://deb.nodesource.com/setup_12.x | bash -
Nachdem das Repository hinzugefügt wurde, installieren Sie die neueste Version von Node.js mit dem folgenden Befehl:
apt-get install nodejs -y
Überprüfen Sie nach der Installation von Node.js die installierte Version von Node.js mit dem folgenden Befehl:
Knoten -v
Sie sollten die folgende Ausgabe erhalten:
v12.19.0
PostgreSQL installieren und konfigurieren
Taiga verwendet PostgreSQL-Server als Datenbank-Backend. Sie müssen es also in Ihrem System installieren. Fügen Sie zuerst den PostgreSQL-GPG-Schlüssel mit dem folgenden Befehl hinzu:
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add -
Fügen Sie als Nächstes das PostgreSQL-Repository mit dem folgenden Befehl hinzu:
echo "deb http://apt.postgresql.org/pub/repos/apt/focal-pgdg main" | tee /etc/apt/sources.list.d/pgdg.list
Aktualisieren Sie als Nächstes das Repository und installieren Sie die neueste Version von PostgreSQL mit dem folgenden Befehl:
apt-get update -y
apt-get install postgresql -y
Als nächstes ändern Sie das PostgreSQL-Passwort mit dem folgenden Befehl:
passwd postgres
Sie sollten die folgende Ausgabe erhalten:
Neues Passwort:Neues Passwort erneut eingeben:passwd:Passwort erfolgreich aktualisiert
Als nächstes wechseln Sie den Benutzer zu postgres und erstellen einen Benutzer für Taiga:
su - postgres
[email protected]:~$ createuser taiga
Melden Sie sich als Nächstes mit dem folgenden Befehl bei der PostgreSQL-Shell an:
[email protected]:~$ psql
Ausgabe:
psql (13.0 (Ubuntu 13.0-1.pgdg20.04+1)) Geben Sie „help“ ein, um Hilfe zu erhalten.
Erstellen Sie nach der Anmeldung einen Benutzer und eine Datenbank mit dem folgenden Befehl:
postgres=# ALTER USER taiga MIT DEM VERSCHLÜSSELTEN Passwort 'yourpassword';
postgres=# CREATE DATABASE taiga OWNER taiga;
Verlassen Sie als Nächstes die PostgreSQL-Shell und den Benutzer mit dem folgenden Befehl:
postgres=# \q
[email protected]:~$ beenden
Installieren Sie RabbitMQ und Redis
Taiga verwendet RabbitMQ als Nachrichtenbroker und Redis für das Caching. Sie müssen also beide Pakete in Ihrem System installieren. Sie können beide Pakete mit dem folgenden Befehl installieren:
apt-get install rabbitmq-server redis-server -y
Erstellen Sie als Nächstes einen neuen Benutzer und virtuellen Host für RabbitMQ mit dem folgenden Befehl:
rabbitmqctl add_user taiga yourpassword
rabbitmqctl add_vhost taiga
rabbitmqctl set_permissions -p taiga taiga ".*" ".*" ".*"
Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
Installieren und konfigurieren Sie das Taiga-Backend
Erstellen Sie zunächst mit dem folgenden Befehl einen separaten Benutzer für Taiga:
adduser taiga
Fügen Sie als Nächstes den Taiga-Benutzer mit dem folgenden Befehl zur sudo-Gruppe hinzu:
adduser taiga sudo
Ändern Sie als Nächstes den Benutzer zu taiga und erstellen Sie ein Verzeichnis zum Speichern von Taiga-Protokollen:
su - taiga
mkdir -p ~/logs
Laden Sie als Nächstes das Taiga-Backend mit dem folgenden Befehl aus dem Git-Repository herunter:
git-Klon https://github.com/taigaio/taiga-back.git
Als nächstes ändern Sie das Verzeichnis in das heruntergeladene Verzeichnis und überprüfen Sie den neuesten Zweig:
cd taiga-back
git checkout stable
Aktivieren Sie als Nächstes den Befehl mkvirtualenv mit dem folgenden Befehl:
nano ~/.bashrc
Fügen Sie die folgende Zeile hinzu:
Quelle '/usr/share/virtualenvwrapper/virtualenvwrapper.sh'
Aktivieren Sie das neue Profil mit folgendem Befehl:
source ~/.bashrc
Erstellen Sie als Nächstes eine virtuelle Python-Umgebung für Taiga:
mkvirtualenv -p /usr/bin/python3 taiga_venv
Installieren Sie als Nächstes alle erforderlichen Abhängigkeiten mit dem folgenden Befehl:
pip3 install -r requirements.txt
Als nächstes migrieren und laden Sie die Daten mit dem folgenden Befehl:
python3 manage.py migrieren --noinput
python3 manage.py loaddata initial_user
python3 manage.py loaddata initial_project_templates
python3 manage.py compilemessages
python3 manage.py collectstatic - -keine Eingabe
Als nächstes müssen Sie die Datei local.py bearbeiten und Ihre Anwendungs- und Datenbankeinstellungen definieren:
nano ~/taiga-back/settings/local.py
Fügen Sie die folgenden Zeilen hinzu:
von .common import *MEDIA_URL ="http://taiga.example.com/media/"STATIC_URL ="http://taiga.example.com/static/"SITES["front"]["schema" ] ="http"SITES["front"]["domain"] ="taiga.example.com"SECRET_KEY ="OQOEJNSJIQHDBQNSUQEJSNNANsqQPAASQLSMSOQND"DEBUG =FalsePUBLIC_REGISTER_ENABLED =TrueDEFAULT_FROM_EMAIL ="[E-Mail-geschützt]"SERVER_EMAIL =DEFAULT_FROM_EMAIL#CELERY_ENABLED ="True_EVENT_ENABLED taiga.events.backends.rabbitmq.EventsPushBackend"EVENTS_PUSH_BACKEND_OPTIONS ={"url":"amqp://taiga:[email protected]:5672/taiga"}
Speichern und schließen Sie die Datei und starten Sie dann den Taiga-Backend-Server mit dem folgenden Befehl:
workon taiga_venv
python manage.py runserver
Sobald der Server erfolgreich gestartet wurde, sollten Sie die folgende Ausgabe erhalten:
Die Systemprüfung hat keine Probleme festgestellt (0 stummgeschaltet). 02. November 2020 - 09:24:41 Django Version 2.2.16, unter Verwendung der Einstellungen 'settings'Starting development server at http://127.0.0.1:8000/Quit the server mit CONTROL-C.
Drücken Sie STRG + C, um den Server zu stoppen.
Deaktivieren Sie als Nächstes die virtuelle Umgebung mit dem folgenden Befehl:
deaktivieren
Installieren und konfigurieren Sie Taiga Fortend
Ändern Sie zuerst den Benutzer zu Taiga und laden Sie die neueste Version des Taiga-Frontends aus dem Git-Repository herunter:
su - taiga
git-Klon https://github.com/taigaio/taiga-front-dist.git
Ändern Sie das Verzeichnis in das heruntergeladene Verzeichnis und checken Sie den neuesten stabilen Zweig mit dem folgenden Befehl aus:
cd taiga-front-dist
git checkout stable
Kopieren Sie als Nächstes die Beispielkonfigurationsdatei mit dem folgenden Befehl:
cp ~/taiga-front-dist/dist/conf.example.json ~/taiga-front-dist/dist/conf.json
Als nächstes bearbeiten Sie die Konfigurationsdatei mit dem folgenden Befehl:
nano ~/taiga-front-dist/dist/conf.json
Ändern Sie die folgenden Zeilen:
{ "api":"http://taiga.example.com/api/v1/", "eventsUrl":"ws://taiga.example.com/events", "eventsMaxMissedHeartbeats":5, " eventsHeartbeatIntervalTime":60000, "eventsReconnectTryInterval":10000, "debug":true, "debugInfo":false, "defaultLanguage":"en", "themes":["taiga"], "defaultTheme":"taiga", " publicRegisterEnabled":true, "feedbackEnabled":true, "supportUrl":"https://tree.taiga.io/support", "privacyPolicyUrl":null, "termsOfServiceUrl":null, "GDPRUrl":null, "maxUploadFileSize" :null, "contribPlugins":[], "tribeHost":null, "importers":[], "gravatar":true, "rtlLanguages":["fa"]}
Speichern und schließen Sie die Datei, wenn Sie fertig sind.
Installieren und konfigurieren Sie Taiga Event
Gehen Sie als Nächstes in Ihr Home-Verzeichnis und laden Sie die neueste Version von Taiga Event mit dem folgenden Befehl herunter:
cd ~
git-Klon https://github.com/taigaio/taiga-events.git taiga-events
Wechseln Sie als Nächstes in das heruntergeladene Verzeichnis und installieren Sie alle NPM-Module mit dem folgenden Befehl:
cd taiga-events
npm install
Kopieren Sie als Nächstes die Beispielkonfigurationsdatei mit dem folgenden Befehl:
cp config.example.json config.json
Bearbeiten Sie als Nächstes die Datei config.json und legen Sie die Rabbitmq-URL und den geheimen Schlüssel fest::
nano config.json
Folgende Zeilen hinzufügen/ändern:
{ "url":"amqp://taiga:[email protected]:5672/taiga", "secret":"OQOEJNSJIQHDBQNSUQEJSNNANsqQPAASQLSMSOQND", "webSocketServer":{ "port":8888 }}
Speichern und schließen Sie die Datei und melden Sie sich dann mit dem folgenden Befehl vom Taiga-Benutzer ab:
beenden
Erstellen Sie eine Systemd-Dienstdatei
Als nächstes müssen Sie eine systemd-Dienstdatei für Taiga und Taiga-Ereignis erstellen. Erstellen Sie zunächst mit dem folgenden Befehl eine systemd-Dienstdatei für das Taiga-Ereignis:
nano /etc/systemd/system/taiga_events.service
Fügen Sie die folgenden Zeilen hinzu:
[Unit]Description=taiga_eventsAfter=network.target[Service]User=taigaWorkingDirectory=/home/taiga/taiga-eventsExecStart=/bin/bash -c "node_modules/coffeescript/bin/coffee index.coffee"Restart=alwaysRestartSec =3[Installieren]WantedBy=default.target
Speichern und schließen Sie die Datei und laden Sie dann den systemd-Dienst mit dem folgenden Befehl neu:
systemctl daemon-reload
Starten Sie als Nächstes den Taiga-Ereignisdienst und ermöglichen Sie ihm, beim Systemneustart mit dem folgenden Befehl zu starten:
systemctl start taiga_events
systemctl enable taiga_events
Erstellen Sie als Nächstes mit dem folgenden Befehl eine systemd-Dienstdatei für Taiga:
nano /etc/systemd/system/taiga.service
Fügen Sie die folgenden Zeilen hinzu:
[Unit]Description=taiga_backAfter=network.target[Service]User=taigaEnvironment=PYTHONUNBUFFERED=trueWorkingDirectory=/home/taiga/taiga-backExecStart=/home/taiga/.virtualenvs/taiga_venv/bin/gunicorn --workers 4 --timeout 60 -b 127.0.0.1:8001 taiga.wsgiRestart=alwaysRestartSec=3[Install]WantedBy=default.target
Speichern und schließen Sie die Datei und laden Sie dann den systemd-Dienst mit dem folgenden Befehl neu:
systemctl daemon-reload
Starten Sie als Nächstes den Taiga-Dienst und ermöglichen Sie ihm, beim Systemneustart mit dem folgenden Befehl zu starten:
systemctl start taiga
systemctl enable taiga
Überprüfen Sie als Nächstes den Status des Taiga-Ereignisses und des Taiga-Dienstes mit dem folgenden Befehl:
systemctl status taiga_events taiga
Sie sollten die folgende Ausgabe sehen:
Nginx als Reverse-Proxy konfigurieren
Es ist eine gute Idee, Nginx als Reverse-Proxy für Taiga zu konfigurieren. Installieren Sie zuerst Nginx mit dem folgenden Befehl:
apt-get install nginx -y
Erstellen Sie nach der Installation eine Konfigurationsdatei für den virtuellen Nginx-Host mit dem folgenden Befehl:
nano /etc/nginx/conf.d/taiga.conf
Fügen Sie die folgenden Zeilen hinzu:
server {listen 80; Servername taiga.example.com; large_client_header_buffers 4 32k; client_max_body_size 50M; Zeichensatz utf-8; access_log /home/taiga/logs/nginx.access.log; error_log /home/taiga/logs/nginx.error.log; # Frontend-Standort / { root /home/taiga/taiga-front-dist/dist/; try_files $uri $uri/ /index.html; } # Backend-Standort /api { proxy_set_header Host $http_host; Proxy_Set_Header X-Real-IP $remote_addr; proxy_set_header X-Schema $schema; proxy_set_header X-Forwarded-Proto $schema; Proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; Proxy_Pass http://127.0.0.1:8001/api; Proxy-Weiterleitung aus; } # Admin-Zugriff (/admin/) Ort /admin { proxy_set_header Host $http_host; Proxy_Set_Header X-Real-IP $remote_addr; proxy_set_header X-Schema $schema; proxy_set_header X-Forwarded-Proto $schema; Proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; Proxy_pass http://127.0.0.1:8001$request_uri; Proxy-Weiterleitung aus; } # Speicherort der statischen Dateien /static { alias /home/taiga/taiga-back/static; } # Speicherort der Mediendateien /media { alias /home/taiga/taiga-back/media; } # Veranstaltungsort /events { Proxy_pass http://127.0.0.1:8888/events; Proxy_http_Version 1.1; Proxy_set_header Upgrade $http_upgrade; proxy_set_header Verbindung "upgrade"; Proxy_connect_timeout 7d; Proxy_send_timeout 7d; Proxy_read_timeout 7d; }}
Speichern und schließen Sie die Datei und starten Sie dann Nginx neu, um die Änderungen zu übernehmen:
systemctl startet nginx neu
Access Tails-Web-UI
Öffnen Sie nun Ihren Webbrowser und greifen Sie über die URL http://taiga.example.com auf die Taiga-Weboberfläche zu . Sie werden auf die folgende Seite weitergeleitet:
Klicken Sie auf Anmelden Taste. Sie werden auf die folgende Seite weitergeleitet:
Geben Sie den Standardnutzernamen als admin an und das Passwort als 123123 den Klick auf LOGIN Taste. Sie sollten das Taiga-Dashboard auf der folgenden Seite sehen:
Schlussfolgerung
Herzliche Glückwünsche! Sie haben das Projektmanagement-Tool Taiga mit Nginx auf Ubuntu 20.04 erfolgreich installiert und konfiguriert. Sie können Taiga jetzt in Ihrer Entwicklungsumgebung bereitstellen und mit der Arbeit daran beginnen.