GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nainstalovat Taiga Project Management System na Ubuntu 20.04

Taiga je bezplatný, open source, jednoduchý, ale výkonný nástroj pro správu projektů pro začínající podniky, agilní vývojáře a designéry. Podporuje týmy, které pracují agilně napříč frameworky Scrum i Kanban. Frontend je napsán v JavaScriptu, zatímco backend je napsán v Pythonu a Django. Je to velmi výkonná a zcela přizpůsobitelná aplikace a zvládne jednoduché i složité projekty pro vývojáře a týmy. Lze jej snadno integrovat s mnoha službami včetně Kanban, Scrum, Talky.io a Appear.in.

V tomto tutoriálu vám ukážeme, jak nainstalovat nástroj Taiga Project Management Tool na server Ubuntu 20.04.

Předpoklady

  • Server se systémem Ubuntu 20.04.
  • Platný název domény s adresou IP vašeho serveru.
  • Na serveru je nakonfigurováno heslo uživatele root.

Začínáme

Nejprve aktualizujte své systémové balíčky na nejnovější verzi pomocí následujícího příkazu:

apt-get update -y

Jakmile jsou všechny balíčky aktualizovány, nainstalujte další závislosti požadované pro Taiga spuštěním následujícího příkazu:

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

Dále budete muset pro váš systém nastavit plně kvalifikovaný název hostitele. Můžete jej nastavit pomocí následujícího příkazu:

hostnamectl set-hostname taiga.example.com

Dále budete muset propojit název hostitele s vaší IP adresou. Můžete to udělat úpravou souboru /etc/hosts:

nano /etc/hosts

Přidejte následující řádky:

your-server-ip taiga.example.com

Po dokončení uložte a zavřete soubor.

Instalovat Node.js

Dále budete muset do systému nainstalovat Node.js. Ve výchozím nastavení není nejnovější verze Node.js dostupná ve výchozím úložišti Ubuntu 20.04. Budete tedy muset do systému přidat úložiště Node.js. Můžete jej přidat pomocí následujícího příkazu:

curl -sL https://deb.nodesource.com/setup_12.x | bash -

Po přidání úložiště nainstalujte nejnovější verzi Node.js pomocí následujícího příkazu:

apt-get install nodejs -y

Po instalaci Node.js ověřte nainstalovanou verzi Node.js pomocí následujícího příkazu:

node -v

Měli byste získat následující výstup:

v12.19.0

Instalace a konfigurace PostgreSQL

Taiga používá PostgreSQL server jako databázový backend. Budete jej tedy muset nainstalovat do svého systému. Nejprve přidejte klíč PostgreSQL GPG pomocí následujícího příkazu:

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add -

Dále přidejte úložiště PostgreSQL pomocí následujícího příkazu:

echo "deb http://apt.postgresql.org/pub/repos/apt/ focal-pgdg main" | tee /etc/apt/sources.list.d/pgdg.list

Dále aktualizujte úložiště a nainstalujte nejnovější verzi PostgreSQL pomocí následujícího příkazu:

apt-get update -y
apt-get install postgresql -y

Dále změňte heslo PostgreSQL pomocí následujícího příkazu:

passwd postgres

Měli byste získat následující výstup:

New password: 
Retype new password: 
passwd: password updated successfully

Dále přepněte uživatele na postgres a vytvořte uživatele pro Taiga:

su - postgres
[email protected]:~$ createuser taiga

Dále se přihlaste do prostředí PostgreSQL pomocí následujícího příkazu:

[email protected]:~$ psql

Výstup:

psql (13.0 (Ubuntu 13.0-1.pgdg20.04+1))
Type "help" for help.

Po přihlášení vytvořte uživatele a databázi pomocí následujícího příkazu:

postgres=# ALTER USER taiga WITH ENCRYPTED password 'yourpassword';
postgres=# CREATE DATABASE taiga OWNER taiga;

Dále ukončete prostředí PostgreSQL a uživatele pomocí následujícího příkazu:

postgres=# \q
[email protected]:~$ exit

Instalovat RabbitMQ a Redis

Taiga používá RabbitMQ jako zprostředkovatele zpráv a Redis pro ukládání do mezipaměti. Takže budete muset nainstalovat oba balíčky do vašeho systému. Oba balíčky můžete nainstalovat pomocí následujícího příkazu:

apt-get install rabbitmq-server redis-server -y

Dále vytvořte nového uživatele a virtuálního hostitele pro RabbitMQ pomocí následujícího příkazu:

rabbitmqctl add_user taiga yourpassword
rabbitmqctl add_vhost taiga
rabbitmqctl set_permissions -p taiga taiga ".*" ".*" ".*"

Jakmile budete hotovi, můžete přejít k dalšímu kroku.

Instalace a konfigurace Taiga Backend

Nejprve vytvořte samostatného uživatele pro Taigu pomocí následujícího příkazu:

adduser taiga

Dále přidejte uživatele Taiga do skupiny sudo pomocí následujícího příkazu:

adduser taiga sudo

Dále změňte uživatele na tajgu a vytvořte adresář pro ukládání protokolů tajgy:

su - taiga
mkdir -p ~/logs

Dále si stáhněte backend Taiga z úložiště Git pomocí následujícího příkazu:

git clone https://github.com/taigaio/taiga-back.git

Dále změňte adresář na stažený adresář a podívejte se na nejnovější větev:

cd taiga-back
git checkout stable

Dále aktivujte příkaz mkvirtualenv pomocí následujícího příkazu:

nano ~/.bashrc

Přidejte následující řádek:

source '/usr/share/virtualenvwrapper/virtualenvwrapper.sh'

Aktivujte nový profil pomocí následujícího příkazu:

source ~/.bashrc

Dále vytvořte virtuální prostředí Pythonu pro Taigu:

mkvirtualenv -p /usr/bin/python3 taiga_venv

Dále nainstalujte všechny požadované závislosti pomocí následujícího příkazu:

pip3 install -r requirements.txt

Dále migrujte a načtěte data pomocí následujícího příkazu:

python3 manage.py migrate --noinput
python3 manage.py loaddata initial_user
python3 manage.py loaddata initial_project_templates
python3 manage.py compilemessages
python3 manage.py collectstatic --noinput

Dále budete muset upravit soubor local.py a definovat nastavení aplikace a databáze:

nano ~/taiga-back/settings/local.py

Přidejte následující řádky:

from .common import *

MEDIA_URL = "http://taiga.example.com/media/"
STATIC_URL = "http://taiga.example.com/static/"
SITES["front"]["scheme"] = "http"
SITES["front"]["domain"] = "taiga.example.com"

SECRET_KEY = "OQOEJNSJIQHDBQNSUQEJSNNANsqQPAASQLSMSOQND"

DEBUG = False
PUBLIC_REGISTER_ENABLED = True

DEFAULT_FROM_EMAIL = "[email protected]"
SERVER_EMAIL = DEFAULT_FROM_EMAIL

#CELERY_ENABLED = True

EVENTS_PUSH_BACKEND = "taiga.events.backends.rabbitmq.EventsPushBackend"
EVENTS_PUSH_BACKEND_OPTIONS = {"url": "amqp://taiga:[email protected]:5672/taiga"}

Uložte a zavřete soubor a poté spusťte backend server Taiga pomocí následujícího příkazu:

workon taiga_venv
python manage.py runserver

Jakmile je server úspěšně spuštěn, měli byste získat následující výstup:

System check identified no issues (0 silenced).
November 02, 2020 - 09:24:41
Django version 2.2.16, using settings 'settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

Stiskněte CTRL + C pro zastavení serveru.

Dále deaktivujte virtuální prostředí pomocí následujícího příkazu:

deactivate

Instalace a konfigurace Taiga Forntend

Nejprve změňte uživatele na Taiga a stáhněte si nejnovější verzi frontendu Taiga z úložiště Git:

su - taiga
git clone https://github.com/taigaio/taiga-front-dist.git

Změňte adresář na stažený adresář a vyzkoušejte nejnovější stabilní větev pomocí následujícího příkazu:

cd taiga-front-dist
git checkout stable

Dále zkopírujte ukázkový konfigurační soubor pomocí následujícího příkazu:

cp ~/taiga-front-dist/dist/conf.example.json ~/taiga-front-dist/dist/conf.json

Dále upravte konfigurační soubor pomocí následujícího příkazu:

nano ~/taiga-front-dist/dist/conf.json

Změňte následující řádky:

{
    "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"]
}

Po dokončení uložte a zavřete soubor.

Instalace a konfigurace události Taiga

Dále přejděte do svého domovského adresáře a stáhněte si nejnovější verzi události Taiga pomocí následujícího příkazu:

cd ~
git clone https://github.com/taigaio/taiga-events.git taiga-events

Dále změňte adresář na stažený adresář a nainstalujte všechny moduly NPM pomocí následujícího příkazu:

cd taiga-events
npm install

Dále zkopírujte ukázkový konfigurační soubor pomocí následujícího příkazu:

cp config.example.json config.json

Dále upravte soubor config.json a nastavte adresu URL rabbitmq a tajný klíč::

nano config.json

Přidejte/upravte následující řádky:

{
    "url": "amqp://taiga:[email protected]:5672/taiga",
    "secret": "OQOEJNSJIQHDBQNSUQEJSNNANsqQPAASQLSMSOQND",
    "webSocketServer": {
        "port": 8888
    }
}

Uložte a zavřete soubor a poté se odhlaste od uživatele Taiga pomocí následujícího příkazu:

exit

Vytvoření souboru služby Systemd

Dále budete muset vytvořit soubor služby systemd pro událost Taiga a Taiga. Nejprve vytvořte servisní soubor systemd pro událost Taiga pomocí následujícího příkazu:

nano /etc/systemd/system/taiga_events.service

Přidejte následující řádky:

[Unit]
Description=taiga_events
After=network.target

[Service]
User=taiga
WorkingDirectory=/home/taiga/taiga-events
ExecStart=/bin/bash -c "node_modules/coffeescript/bin/coffee index.coffee"
Restart=always
RestartSec=3

[Install]
WantedBy=default.target

Uložte a zavřete soubor a poté znovu načtěte službu systemd pomocí následujícího příkazu:

systemctl daemon-reload

Dále spusťte službu událostí Taiga a povolte její spuštění při restartu systému pomocí následujícího příkazu:

systemctl start taiga_events
systemctl enable taiga_events

Dále vytvořte soubor služby systemd pro Taigu pomocí následujícího příkazu:

nano /etc/systemd/system/taiga.service

Přidejte následující řádky:

[Unit]
Description=taiga_back
After=network.target

[Service]
User=taiga
Environment=PYTHONUNBUFFERED=true
WorkingDirectory=/home/taiga/taiga-back
ExecStart=/home/taiga/.virtualenvs/taiga_venv/bin/gunicorn --workers 4 --timeout 60 -b 127.0.0.1:8001 taiga.wsgi
Restart=always
RestartSec=3

[Install]
WantedBy=default.target

Uložte a zavřete soubor a poté znovu načtěte službu systemd pomocí následujícího příkazu:

systemctl daemon-reload

Dále spusťte službu Taiga a povolte její spuštění při restartu systému pomocí následujícího příkazu:

systemctl start taiga
systemctl enable taiga

Dále ověřte stav události Taiga a služby Taiga pomocí následujícího příkazu:

systemctl status taiga_events taiga

Měli byste vidět následující výstup:

? taiga_events.service - taiga_events
     Loaded: loaded (/etc/systemd/system/taiga_events.service; disabled; vendor preset: enabled)
     Active: active (running) since Mon 2020-11-02 09:30:21 UTC; 46s ago
   Main PID: 26383 (node)
      Tasks: 7 (limit: 2353)
     Memory: 15.2M
     CGroup: /system.slice/taiga_events.service
             ??26383 node node_modules/coffeescript/bin/coffee index.coffee

Nov 02 09:30:21 taiga.example.com systemd[1]: Started taiga_events.

? taiga.service - taiga_back
     Loaded: loaded (/etc/systemd/system/taiga.service; disabled; vendor preset: enabled)
     Active: active (running) since Mon 2020-11-02 09:30:55 UTC; 13s ago
   Main PID: 26478 (gunicorn)
      Tasks: 5 (limit: 2353)
     Memory: 266.4M
     CGroup: /system.slice/taiga.service
             ??26478 /home/taiga/.virtualenvs/taiga_venv/bin/python /home/taiga/.virtualenvs/taiga_venv/bin/gunicorn --workers 4 --timeout 60 >
             ??26494 /home/taiga/.virtualenvs/taiga_venv/bin/python /home/taiga/.virtualenvs/taiga_venv/bin/gunicorn --workers 4 --timeout 60 >
             ??26495 /home/taiga/.virtualenvs/taiga_venv/bin/python /home/taiga/.virtualenvs/taiga_venv/bin/gunicorn --workers 4 --timeout 60 >
             ??26496 /home/taiga/.virtualenvs/taiga_venv/bin/python /home/taiga/.virtualenvs/taiga_venv/bin/gunicorn --workers 4 --timeout 60 >
             ??26497 /home/taiga/.virtualenvs/taiga_venv/bin/python /home/taiga/.virtualenvs/taiga_venv/bin/gunicorn --workers 4 --timeout 60 >

Nov 02 09:30:55 taiga.example.com gunicorn[26495]: [2020-11-02 09:30:55 +0000] [26495] [INFO] Booting worker with pid: 26495
Nov 02 09:30:55 taiga.example.com gunicorn[26496]: [2020-11-02 09:30:55 +0000] [26496] [INFO] Booting worker with pid: 26496
Nov 02 09:30:55 taiga.example.com gunicorn[26494]: Trying import local.py settings...
Nov 02 09:30:55 taiga.example.com gunicorn[26495]: Trying import local.py settings...
Nov 02 09:30:55 taiga.example.com gunicorn[26497]: Trying import local.py settings...
Nov 02 09:30:55 taiga.example.com gunicorn[26497]: 2020-11-02 09:30:55 +0000] [26497] [INF
Nov 02 09:30:55 taiga.example.com gunicorn[26495]: 2
Nov 02 09:30:55 taiga.example.com gunicorn[26496]: 2
Nov 02 09:30:55 taiga.example.com gunicorn[26496]: rying import local.py settings...
Nov 02 09:30:55 taiga.example.com gunicorn[26497]: rying import local.py settings...

Konfigurovat Nginx jako reverzní proxy

Je dobré nakonfigurovat Nginx jako reverzní proxy pro Taigu. Nejprve nainstalujte Nginx pomocí následujícího příkazu:

apt-get install nginx -y

Po instalaci vytvořte konfigurační soubor virtuálního hostitele Nginx pomocí následujícího příkazu:

nano /etc/nginx/conf.d/taiga.conf

Přidejte následující řádky:

server {
    listen 80;
    server_name taiga.example.com;

    large_client_header_buffers 4 32k;
    client_max_body_size 50M;
    charset utf-8;

    access_log /home/taiga/logs/nginx.access.log;
    error_log /home/taiga/logs/nginx.error.log;

    # Frontend
    location / {
        root /home/taiga/taiga-front-dist/dist/;
        try_files $uri $uri/ /index.html;
    }

    # Backend
    location /api {
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Scheme $scheme;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://127.0.0.1:8001/api;
        proxy_redirect off;
    }

    # Admin access (/admin/)
    location /admin {
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Scheme $scheme;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://127.0.0.1:8001$request_uri;
        proxy_redirect off;
    }

    # Static files
    location /static {
        alias /home/taiga/taiga-back/static;
    }

    # Media files
    location /media {
        alias /home/taiga/taiga-back/media;
    }

    # Events
    location /events {
        proxy_pass http://127.0.0.1:8888/events;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_connect_timeout 7d;
        proxy_send_timeout 7d;
        proxy_read_timeout 7d;
    }
}

Uložte a zavřete soubor a poté restartujte Nginx, aby se změny uplatnily:

systemctl restart nginx

Webové uživatelské rozhraní Access Tails

Nyní otevřete webový prohlížeč a přejděte do webového rozhraní Taiga pomocí adresy URL http://taiga.example.com . Budete přesměrováni na následující stránku:

Klikněte na Přihlásit knoflík. Budete přesměrováni na následující stránku:

Zadejte výchozí uživatelské jméno jako admin a heslo 123123 kliknutím na tlačítko PŘIHLÁSIT knoflík. Na následující stránce byste měli vidět řídicí panel Taiga:

Závěr

Gratulujeme! úspěšně jste nainstalovali a nakonfigurovali nástroj pro správu projektů Taiga s Nginx na Ubuntu 20.04. Nyní můžete nasadit Taigu ve svém vývojovém prostředí a začít na něm pracovat.


Ubuntu
  1. Nainstalujte software Taiga.io Agile Project Management na Ubuntu 16.04

  2. Jak nainstalovat Logstash na Ubuntu 18.04

  3. Jak nainstalovat Taiga Project Management na CentOS 8

  1. Jak nainstalovat OpenProject na Ubuntu 16.04

  2. Jak nainstalovat Ralph Asset Management System na Ubuntu 20.04

  3. Jak nainstalovat nástroj GitScrum Agile Project Management Tool na Ubuntu 20.04 LTS

  1. Jak nainstalovat Mattermost Team Messaging System na Ubuntu 20.04

  2. Jak nainstalovat nástroj Jira Agile Project Management Tool na Ubuntu 20.04

  3. Jak nainstalovat Redmine Project Management Software na Ubuntu 20.04