GNU/Linux >> Znalost Linux >  >> Cent OS

Jak nainstalovat software Taiga.io Project Management na CentOS 7

Taiga.io je open source systém pro řízení projektů pro agilní vývojáře, designéry a projektové manažery. Je to krásný nástroj pro řízení projektů, který zvládne jednoduché i složité projekty pro začínající podniky, vývojáře softwaru atd.

Platforma Taiga má tři hlavní komponenty a každá komponenta má své vlastní závislosti.

  1. Taiga-back :Backend aplikace, která poskytuje API. Napsáno v Pythonu a Djangu.
  2. Taiga-front-dist :Taiga Frontend napsaný v AngularJS a CoffeeScript.
  3. Taiga-události :Server Taiga WebSocket pro zobrazení změn v aplikacích v reálném čase. A pomocí RabbitMQ jako zprostředkovatele zpráv.

V tomto tutoriálu vám krok za krokem ukážu, jak nainstalovat nástroje pro správu projektů Taiga.io na server CentOS 7. Dozvíme se také, jak nastavit a nakonfigurovat server CentOS 7 pro instalaci Taiga.io.

Předpoklady

  1. CentOS 7
  2. Oprávnění uživatele root

Co uděláme

  1. Instalovat balíčky
  2. Nainstalujte a nakonfigurujte PostgreSQL
  3. Přidat uživatele Taiga
  4. Konfigurace Taiga Back
  5. Nakonfigurujte Taiga Frontend
  6. Konfigurovat události Taiga
  7. Konfigurace správy cirkusových procesů
  8. Nakonfigurujte virtuálního hostitele Nginx pro Taiga.io
  9. Povolte společnosti Nginx přístup k frontendu Taiga
  10. Testování

Krok 1 – Instalace balíčků

Před instalací všech komponent Taiga.io musíme připravit systém instalací některých balíčků. V tomto prvním kroku nainstalujeme balíčky potřebné pro všechny komponenty a moduly Taiga, včetně Nginx, RabitMQ, Redis atd.

- Instalovat závislosti

Potřebujeme 'Development Tools' pro CentOS 7, které budou použity pro kompilaci některých modulů pythonu.

Nainstalujte požadované balíčky pomocí příkazu yum níže.

sudo yum -y install gcc gcc-c++ make openssl-devel binutils autoconf flex bison libjpeg-devel freetype-devel zlib-devel perl-ZMQ-LibZMQ3 gdbm-devel ncurses-devel automake libtool libffi-devel curltext /před> 

- Nainstalujte úložiště EPEL

Nyní musíme nainstalovat úložiště EPEL (Extra Packages for Enterprise Linux). Je potřeba pro instalaci webového serveru Nginx, RabbitMQ a Redis.

Nainstalujte EPEL Repository do systému CentOS 7 pomocí následujícího příkazu:

sudo yum -y install epel-release

- Nainstalujte Python

Taiga.io potřebuje k instalaci Python 3.5. K instalaci Pythonu 3.5 budeme používat úložiště třetí strany – 'ius community' .

Přidejte úložiště 'ius community' následujícím způsobem.

instalace sudo yum -y https://centos7.iuscommunity.org/ius-release.rpm

Nyní nainstalujte Python 3.5 pomocí následujícího příkazu yum.

sudo yum -y install python35u python35u-pip python35u-devel python-devel python-pip python-virtualenvwrapper libxml2-devel libxslt-devel

- Nainstalujte Nginx

Taiga.io je nástroj webové aplikace a běží pod webovým serverem. A pro tuto příručku budeme jako webový server používat Nginx.

Nainstalujte Nginx z úložiště EPEL pomocí příkazu yum níže.

sudo yum -y nainstalovat nginx

Po dokončení instalace spusťte službu a povolte její spuštění při spouštění systému.

systemctl spustit nginx
systemctl povolit nginx

Nyní zkontrolujte otevřený port pomocí příkazu netstat.

netstat -plntu

A ujistěte se, že máte HTTP port 80 na seznamu, jak je uvedeno níže.

- Nainstalujte Redis a RabbitMQ

Toto je volitelné, protože Taiga.io můžete stále provozovat bez těchto balíčků. V zásadě budou balíčky Redis a RabbitMQ využívány událostmi tajgy.

Nainstalujte Redis a RabbitMQ z úložiště EPEL pomocí příkazu yum níže.

yum -y nainstalujte králičímq-server redis

Pokud je instalace dokončena, spusťte služby Redis i RabbitMQ a povolte jejich spuštění při spouštění systému.

systemctl spustit králičímq-server
systemctl povolit králičímq-server

systemctl spustit redis
systemctl povolit redis

Dále musíme vytvořit nového uživatele a virtuálního hostitele s názvem 'taiga' pro RabbitMQ a bude použit pro 'taiga-events'.

Spusťte následující příkazy pro vytvoření nového uživatele a vhost s názvem 'taiga' s heslem 'aqwe123' a poté nastavte oprávnění pro uživatele 'taiga'.

sudo rabbitmqctl add_user taiga aqwe123
sudo rabbitmqctl add_vhost taiga
sudo rabbitmqctl set_permissions -p taiga taiga ".*" ".*" ".*"

- Nainstalujte Nodejs

Uzel potřebuje 'taiga-events' - přidejte repozitář nodejs nodesource a nainstalujte jej pomocí příkazu yum.

curl --silent --location https://rpm.nodesource.com/setup_6.x | sudo bash -
sudo yum -y install nodejs

Všechny základní balíčky potřebné pro instalaci Taiga.io byly nainstalovány do systému.

Krok 2 – Instalace a konfigurace PostgreSQL

Taiga.io je webová aplikace založená na webovém frameworku Python Django a jako databázi používá PostgreSQL. Pro instalaci Taiga.io potřebujeme PostgreSQL verze 9.5.

Přidejte do systému úložiště PostgreSQL 9.5.

sudo rpm -Uvh http://yum.postgresql.org/9.5/redhat/rhel-7-x86_64/pgdg-centos95-9.5-2.noarch.rpm

Nyní nainstalujte PostgreSQL 9.5 pomocí příkazu yum níže.

sudo yum -y install postgresql95 postgresql95-devel postgresql95-contrib postgresql95-docs postgresql95-server

Po dokončení instalace musíme inicializovat databázi PostgreSQL.

sudo /usr/pgsql-9.5/bin/postgresql95-setup initdb

Nyní spusťte službu PostgreSQL a povolte její spuštění při každém startu systému.

systemctl start postgresql-9.5
systemctl povolit postgresql-9.5

Dále musíme vytvořit novou databázi pro instalaci Taiga.io. Potřebujeme vytvořit novou databázi a uživatele jménem 'taiga'.

Přihlaste se jako uživatel 'postgres'.

su - postgres

Nyní vytvořte novou databázi a uživatele pro Taiga.io pomocí následujících příkazů.

createuser tajga
createdb tajga -O tajga

Byla vytvořena nová databáze PostgreSQL pro instalaci Taiga.io.

Krok 3 – Přidání uživatele Taiga

V tomto kroku vytvoříme nového uživatele systému a skupinu s názvem 'taiga' a poté je přidáme do skupiny wheel pro přístup k příkazům sudo.

Použijte níže uvedený příkaz 'useradd' k vytvoření uživatele a skupiny 'taiga'.

useradd -U -m -s /bin/bash tajga
passwd tajga

Nyní přidejte uživatele 'taiga' do skupiny 'wheel'.

usermod -a -G kolo tajga

Otestujte uživatele 'taiga' na přístup k sudo.

su - tajga
sudo su

Zadejte své heslo a ujistěte se, že máte oprávnění root pro uživatele 'taiga'.

Krok 4 – Konfigurace Taiga Back

Taiga-back je backend Taiga.io, který poskytuje rozhraní API rozhraní Taiga. Je napsán v Pythonu a Django Web Framework.

V tomto kroku nainstalujeme a nakonfigurujeme komponentu tajgy 'taiga-back'.

Přihlaste se k uživateli 'taiga' a stáhněte si zdrojový kód 'taiga-back' z GitHubu.

su - taiga
klon git https://github.com/taigaio/taiga-back.git taiga-back

Nyní přejděte do adresáře 'taiga-back' a změňte větev na větev 'stable'.

cd taiga-back
git checkout stable

Než budeme pokračovat, musíme aktualizovat balíček virtualenv.

instalace sudo pip --upgrade virtualenv

Dále vytvořte nové prostředí pythonu 'taiga' pomocí příkazu mkvirtualenv.

mkvirtualenv -p /usr/bin/python3.5 tajga

Bylo vytvořeno nové virtualenv pro 'taiga-back'.

Před instalací všech modulů pro taiga-back musíme vytvořit nový odkaz pro příkaz 'pg_config' do adresáře '/usr/bin'.

sudo ln -s /usr/pgsql-9.5/bin/pg_config /usr/bin/pg_config

Nyní nainstalujte všechny python moduly, které potřebuje 'taiga-back' pomocí příkazů níže.

workon taiga
pip install -r requirements.txt

Po dokončení instalace musíme databázi naplnit počátečními základními daty.

Spusťte všechny následující příkazy.

python manage.py migrate --noinput
python manage.py loaddata initial_user
python manage.py loaddata initial_project_templates
python manage.py compilmessages
python manage.py collectstatic - -noinput

Tyto příkazy automaticky vytvoří účet správce 'admin s heslem '123123 '.

Dále vytvořte novou konfiguraci pro 'taiga-back' pomocí vim.

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

Zde vložte následující konfiguraci.

z importu .common *

MEDIA_URL ="http://taiga.hakase-labs.co/media/"
STATIC_URL ="http://taiga.hakase-labs .co/static/"
SITES["front"]["scheme"] ="http"
SITES["front"]["domain"] ="taiga.hakase-labs.co"

SECRET_KEY ="theeveryultratopsecretkey"

DEBUG =Nepravda
PUBLIC_REGISTER_ENABLED =Pravda

DEFAULT_FROM_EMAIL ="[e-mail chráněný]"
SERVER_EMAIL =DEFAULT_FROM_EMAIL

#CELERY_ENABLED =Pravda

EVENTS_PUSH_BACKEND ="taiga.events.backends.rabbitmq.EventsPushBackend"
EVENTS_PUSH_BACK":"qOPTIONS ://taiga:[email protected]:5672/taiga"}

# Odkomentujte a vyplňte správné parametry připojení
# pro povolení odesílání e-mailů. EMAIL_HOST_USER by měl končit @domain.tld
#EMAIL_BACKEND ="django.core.mail.backends.smtp.EmailBackend"
#EMAIL_USE_TLS =False
#EMAIL_HOST ="localhost"
#EMAIL_HOST_USER =""
#EMAIL_HOST_PASSWORD =""
#EMAIL_PORT =25

# Odkomentujte a naplňte správnými parametry připojení
# pro povolení přihlášení/zpěvu github.
#GITHUB_API_CLIENT_ID ="yourgithubclientid"
#GITHUB_API_CLIENT_SECRET ="yourgithubclientscret"

Uložte a ukončete.

Poznámka:

  • Změňte 'MEDIA_URL' a 'STATIC_URL' za svůj vlastní název domény.
  • Změňte klíč „SECRET_KEY“ svým vlastním velmi tajným klíčem.
  • Změňte hodnotu hesla EVENTS_PUSH_BACKEND_OPTIONS na svou vlastní hodnotu RabbitMQ. Pro tuto příručku používáme heslo 'aqwe123'.

Nyní otestujte 'taiga-back' pomocí příkazu níže.

workon taiga
python manage.py runserver 0.0.0.0:8000

Příkaz spustí tajgu-back pod veřejnou IP serveru s portem 8000.

Otevřete webový prohlížeč a navštivte následující adresu.

http://192.168.33.10:8000/api/v1/

A získáte rozhraní API „taiga-back“ s formátem JSON, jak je uvedeno níže.

Instalace a konfigurace 'taiga-back' byla dokončena.

Krok 5 – Konfigurace rozhraní Taiga

V tomto kroku stáhneme a nakonfigurujeme frontend tajgy. Frontend zvládne všechna taiga rozhraní.

Přihlaste se k uživateli tajgy.

su - tajga

Stáhněte si zdrojový kód 'Taiga frontend' pomocí git.

cd ~
klon git https://github.com/taigaio/taiga-front-dist.git taiga-front-dist

Přejděte do adresáře 'taiga-front-dist' a změňte větev na 'stable'.

cd taiga-front-dist
git checkout stable

Zkopírujte výchozí konfigurační soubor a upravte jej pomocí vim.

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

Zkopírujte následující konfiguraci:

{
    "api":"http://taiga.hakase-labs.co/api/v1/",
    "eventsUrl":"ws://taiga.hakase-labs. co/events",
    "debug":"true",
    "publicRegisterEnabled":true,
    "feedbackEnabled":true,
    "privacyPolicyUrl":null,
    "termsOfServiceUrl":null,
    "maxUploadFileSize":null,
    "contribPlugins":[]
}

Uložte a ukončete.

Konfigurace 'Taiga frontend' byla dokončena.

Krok 6 – Konfigurace událostí Taiga

Taiga-events je server WebSocket, který vám umožňuje zobrazovat změny v Taiga.io Dashboard v reálném čase a používá RabbitMQ jako zprostředkovatele zpráv. V tomto kroku stáhneme a nakonfigurujeme 'taiga-events'.

Přihlaste se k uživateli 'taiga'.

su - tajga

Stáhněte si zdrojový kód 'Taiga Events' a přejděte do adresáře.

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

Nyní si musíme stáhnout a nainstalovat všechny javascriptové knihovny, které potřebuje 'taiga-events' pomocí příkazu npm následujícím způsobem.

npm install
sudo npm install -g coffee-script

Poznámka: Musíme nainstalovat 'coffee-script' pod kořenovým systémem.

Dále zkopírujte konfigurační soubor JSON do 'config.json' a poté jej upravte pomocí vim.

cp config.example.json config.json
vim config.json

Zde vložte následující konfiguraci.

{
    "url":"amqp://taiga:[e-mail chráněný]:5672/taiga",
    "secret":"theeveryultratopsecretkey",
    "webSocketServer":{
        "port":8888
    }
}

Uložte a ukončete.

Poznámka:

  • Změňte hodnotu 'url' pomocí vlastního uživatele a hesla králíkmq.
  • U hodnoty 'secret' se ujistěte, že odpovídá 'SECRET_KEY' na 'local.py' - konfiguračním souboru 'taiga-back'.

Konfigurace událostí Taiga byla dokončena.

Krok 7 – Instalace a konfigurace Circus

Cirkus bude sloužit pro řízení a řízení procesu „tajga-back“ a „tajga-události“. 'taiga-events' běží jako skript kávy a 'taiga-back' běží pod Gunicornem.

V tomto kroku nainstalujeme Circus ručně ze zdrojového kódu.

Přihlaste se jako uživatel tajgy.

su - tajga

Nyní si stáhněte zdrojový kód cirkusu pomocí git.

cd ~/
klon git https://github.com/circus-tent/circus.git circus

Před instalací cirkusu do systému musíme vytvořit nový adresář pro konfiguraci cirkusu.

Vytvořte nový adresář 'conf' pod uživatelem tajgy.

mkdir -p ~/conf

A vytvořte novou cirkusovou konfiguraci pro Taiga.io s názvem 'taiga.ini'.

vim ~/conf/taiga.ini

Vložte následující konfiguraci.

[circus]
check_delay =5
koncový bod =tcp://127.0.0.1:5555
pubsub_endpoint =tcp://127.0.0.1:5556
statsd =true

[watcher:taiga-events]
working_dir =/home/taiga/taiga-events
cmd =/usr/bin/coffee
args =index.coffee
uid =tajga
numprocesses =1
autostart =true
send_hup =true
stdout_stream.class =FileStream
stdout_stream.filename =/home/taiga/ logs/taigaevents.stdout.log
stdout_stream.max_bytes =10485760
stdout_stream.backup_count =12
stderr_stream.class =FileStream
stderr_vents.filename =/home/taiga/logs .stderr.log
stderr_stream.max_bytes =10485760
stderr_stream.backup_count =12

[watcher:taiga]
working_dir =/home/taiga/taiga-back
cmd =gunicorn
args =-w 3 -t 60 --pythonpath=. -b 127.0.0.1:8001 taiga.wsgi
uid =tajga
numprocesses =1
autostart =true
send_hup =true
stdout_stream.class =FileStream
stdout_stream.filename =/home/taiga/logs/gunicorn.stdout.log
stdout_stream.max_bytes =10485760
stdout_stream.backup_count =4
stderr_stream.class =FileStream
st. filename =/home/taiga/logs/gunicorn.stderr.log
stderr_stream.max_bytes =10485760
stderr_stream.backup_count =4

[env:taiga]
PATH =/home/taiga/.virtualenvs/taiga/bin:$PATH
TERM=rxvt-256color
SHELL=/bin/bash
USER=taiga
LANG=en_US.UTF -8
HOME=/home/taiga
PYTHONPATH=/home/taiga/.virtualenvs/taiga/lib/python3.5/site-packages

Uložte a ukončete.

Nyní vytvořte adresář pro soubory cirkusových protokolů.

mkdir -p ~/logs

Přejděte do adresáře cirkusu a nainstalujte software s právy root.

cd ~/circus
sudo python3.5 setup.py install

Po dokončení instalace nakonfigurujeme cirkus jako službu v systému.

Spusťte příkaz sudo a poté vytvořte nový soubor služby 'circusd.service'.

sudo su
vim /usr/lib/systemd/system/circusd.service

Zde vložte následující konfiguraci.

[Jednotka]
Popis=circus

[Služba]
ExecStart=/usr/bin/circusd /home/taiga/conf/taiga.ini

Uložte a ukončete.

Nyní znovu načtěte systémový systém pomocí příkazu níže.

systemctl daemon-reload

Ujistěte se, že nedošlo k žádné chybě, pak spusťte službu circusd a povolte její spuštění při každém startu systému.

systemctl spustit circusd
systemctl povolit circusd

Cirkusová instalace a konfigurace pro Taiga.io byla dokončena. Zkontrolujte to pomocí příkazu circusctl níže.

stav circusctl

A ujistěte se, že máte taiga-back a taiga-události na seznamu cirkusových procesů.

Nebo můžete použít příkaz systemctl, jak je uvedeno níže.

systemctl status circusd

Krok 8 – Konfigurace virtuálního hostitele Taiga Nginx

V tomto kroku nakonfigurujeme virtuálního hostitele Nginx pro Taiga.io. Vytvoříme nový soubor virtuálního hostitele v adresáři 'conf.d' pro naši instalaci Taiga.io.

Přejděte do konfiguračního adresáře nginx a vytvořte nový soubor 'taiga.conf' v adresáři 'conf.d'.

cd /etc/nginx/
vim conf.d/taiga.conf

Zde vložte následující konfiguraci.

server {
    listen 80;
    název_serveru taiga.hakase-labs.co;

    large_client_header_buffers 4 32k;
    client_max_body_size 50M;
  f -8;

    access_log /var/log/nginx/taiga.access.log;
    error_log /var/log/nginx/taiga.error.log;

    # Frontend
    umístění / {
        root /home/taiga/taiga-front-dist/dist/;
        try_files $uri $uri/ /index.html;
    }

    # Backend
    umístění /api {
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
$sche       proxy-_Scheme_set_header X-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.0.1: 1 přímé   //api;0 1
    }

    # Django administrátorský přístup (/admin/)
    umístění /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; Forwarded Proto $-    proxy_add_x_forwarded_for;
        proxy_pass http://127.0.0.1:8001$request_uri;
        proxy_redirect off;
    }

    # Statické soubory
    umístění
        alias /home/taiga/taiga-back/static;
    }

    # Mediální soubory
    umístění /media {
        alias /home/taiga/ taiga-back/media;
    }

    # Taiga-events
    místo /události {
    proxy_pass http://127.0.0.1:8888/events;
    proxy_http_version 1.1;
    Upgrade proxy_set_header $http_upgrade;
    proxy_set_header Připojení "upgrade";
    proxy_connect_timeout 7d;
    proxy_time_send_timeout 7d;
       /7 >   
}

Uložte a ukončete.

Nyní spusťte testovací konfiguraci nginx a ujistěte se, že nedošlo k chybě. Poté restartujte službu webového serveru.

nginx -t
systemctl restart nginx

Konfigurace virtuálního hostitele pro Taiga.io byla dokončena.

Krok 9 – Povolení přístupu Nginx k frontendu Taiga

Někdy se může zobrazit chyba o webovém serveru Nginx, že nemůže získat přístup k souborům frontendu tajgy – v tomto případě se zobrazí Nginx '500 Internal Server Error'.

Abychom tento problém vyřešili, musíme změnit vlastníka nebo skupinu všech souborů frontendu tajgy a dát Nginxu přístup ke všem souborům.

Ve výchozím nastavení na CentOS 7 běží webový server Nginx pod uživatelem 'nginx' a instalace Taiga.io běží pod uživatelem 'taiga'.

Následuje příklad chyby Nginx, o které mluvíme.

Webový server Nginx nemůže číst veškerý obsah v adresáři '/home/taiga/taiga-front-dist/dist'.

Zkontrolujte to pomocí příkazu níže.

sudo -u nginx stat /home/taiga/taiga-front-dist/dist

A dostanete výsledek zamítnutí povolení.

Nyní musíme přidat uživatele 'nginx' do skupiny 'taiga' a dát uživateli nginx požadovaná oprávnění pro adresář taiga-front-dist.

Přidejte uživatele 'nginx' do skupiny 'taiga'.

sudo gpasswd -a nginx tajga

Udělte webovému serveru oprávnění ke čtení veškerého obsahu v adresáři taiga-front-dist.

sudo chmod g+x /home/taiga
sudo chmod g+x /home/taiga/taiga-front-dist
sudo chmod g+x /home/taiga/taiga-front-dist /dist

A restartujte webový server Nginx.

systemctl restart nginx

Krok 10 – Testování

Otevřete webový prohlížeč a navštivte název instalační domény Taiga, moje je http://taiga.hakase-labs.co

A měli byste získat výchozí domovskou stránku Taiga, která je zobrazena níže.

Zde zadejte výchozího uživatele 'admin s heslem '123123 “ a poté klikněte na tlačítko „Přihlásit se“.

A dostanete se do administračního panelu.

Instalace Taiga.io na CentOS 7 s webovým serverem Nginx byla úspěšně dokončena.


Cent OS
  1. Jak nainstalovat software pro správu projektů MyCollab na CentOS 7

  2. Jak nainstalovat aukční software WeBid na CentOS

  3. Jak nainstalovat Taiga Project Management na CentOS 8

  1. Jak nainstalovat PHP 7, 7.2 a 7.3 na CentOS 7

  2. Jak nainstalovat Java 11 &12 na CentOS 7

  3. Jak nainstalovat Wine 4.0 na CentOS 7

  1. Jak nainstalovat Vim 8.2 na CentOS 7

  2. Jak nainstalovat VirtualBox na CentOS 7

  3. Jak nainstalovat php na RHEL 8 / CentOS 8 Linux