Zainstalować oprogramowanie do zarządzania projektami Taiga.io na Ubuntu 16.04

 

Taiga.IO jest system zarządzania projektem typu open source dla agile deweloperów, Projektanci, i kierowników projektów. Jest to narzędzie do zarządzania piękny projekt, który może obsługiwać zarówno proste jak i złożone projekty dla startupów, Deweloperzy oprogramowania itp.

Taiga platforma ma trzy główne składniki, i każdy składnik ma własnej zależności.

  1. tajga tył: Wewnętrznej bazy danych aplikacji, który udostępnia interfejs API. Napisany w Python i Django.
  2. tajga przód dist: Nakładka Tajga jest napisany w AngularJS i CoffeeScript.
  3. tajga wydarzenia: Serwerem WebSocket taiga pokazanie zmian w czasie rzeczywistym w aplikacjach. I za pomocą RabbitMQ jako broker wiadomości.

W tym samouczku, Pokaże Ci krok po kroku jak zainstalować narzędzie do zarządzania projektami Taiga.io na Ubuntu 16.04 serwer. Dowiemy się jak skonfigurować Ubuntu server dla instalacji Taiga.io.

Wymagania wstępne

  • Ubuntu 16.04
  • Uprawnienia użytkownika root

Co robimy

  1. Zainstalować wymagania wstępne
  2. Dodaj użytkownika Taiga
  3. Zainstalować i skonfigurować Taiga Backend
  4. Zainstalować i skonfigurować Taiga Frontend
  5. Zainstaluj i skonfiguruj zdarzenia Taiga
  6. Konfigurowanie cyrku i Gunicorn
  7. Konfigurować Nginx Virtualhost Tajga
  8. Testowanie

Krok 1 - Zainstalować wymagania wstępne

Przed rozpoczęciem instalacji wszystkich składników Taiga.io, musimy przygotować system, instalując wymagane pakiety. W ten pierwszy krok, będziemy instalować pakiety, które potrzebne dla wszystkich Taiga komponenty i moduły, łącznie z Nginx, RabitMQ, Redis itp.

Aby rozpocząć z, repozytorium aktualizacji i uaktualnienia systemu.

sudo apt update
sudo apt uaktualnienia -y

- Zainstalować zależności

Następujące pakiety będą używane do kompilacji niektórych modułów Pythona. Uruchom polecenie apt poniżej, aby zainstalować wszystkie z nich w systemie.

sudo apt-get install -y budowaæ istotny binutils-doc autoconf flex Bizon libjpeg-dev libfreetype6-dev zlib1g-dev libzmq3-dev libgdbm-dev drobnicowy libncurses5-dev automake libtool libffi-dev curl git tmux gettext

- Instalacji Nginx

Taiga.IO to narzędzie oparte na sieci web aplikacji. Jest uruchomiona na serwerze sieci web. I dla tego przewodnika, możemy używać Nginx serwer sieci web dla instalacji.

Instalacji Nginx za pomocą poniżej polecenia apt.

sudo apt-get install nginx -y

Po zakończeniu instalacji, Uruchom usługę Nginx i włączyć go, aby uruchomić podczas startu systemu, coś, że można zrobić za pomocą polecenia systemctl.

systemctl start nginx
systemctl Włącz nginx

Teraz sprawdzić za pomocą polecenia netstat i upewnij się, że HTTP port znajduje się na liście.

netstat - plntu

Nginx pomyślnie zainstalowane

- Zainstaluj magazyn Redis i RabbitMQ

Jest to opcjonalny pakiet, jeśli nie chcesz asynchroniczne powiadomienia. Zainstaluj magazyn Redis i RabbitMQ za pomocą poniżej polecenia apt.

sudo apt-get install -y redis-rabbitmq serwera

Po zakończeniu instalacji, Uruchom usługi redis i rabbitmq i dodać tych usług do czasu rozruchu.

systemctl start redis
systemctl start rabbitmq serwer
systemctl Włącz rabbitmq serwer

Następny, potrzebujemy wobec wierzyciel pewien nowy użytkownik i wirtualnego hosta o nazwie "Tajga" for RabbitMQ - będzie używany dla 'Tajga wydarzenia'.

Uruchom polecenia poniżej dla tworzenia nowego użytkownika i infomracji o nazwie Tajga z hasłem 'aqwe123', następnie ustaw uprawnienia dla użytkownika "Tajga".

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

Zainstaluj magazyn Redis i RabbitMQ

- Zainstalować Pythona

"Tajga back" jest tworzony z Django Web Framework, i to wykorzystuje 'Python 3.5'. Tak więc musimy zainstalować Pythona 3.5 w systemie.

Uruchom następujące polecenie, aby zainstalować Pythona 3.5 z wszystkich wymaganych zależności.

zainstalować sudo apt -y python3 python3-pip python-dev python3-dev python-pip virtualenvwrapper libxml2-dev libxslt-dev

- Zainstalować cyrk

Cyrk jest Menedżer procesów i gniazda Menedżera. Może służyć do monitorowania i kontrolowania procesu i gniazd w systemie Linux.

W tym przewodniku, możemy używać cyrk dla zarządzanie procesem 'Tajga wydarzenia' utworzone za pomocą CoffeeScript.

Zainstalować cyrk z poniżej polecenia apt.

sudo apt-get install -y cyrk

Po zakończeniu instalacji, Uruchom usługę 'circusd' i włączyć do uruchomienia za każdym razem podczas startu systemu.

systemctl start circusd
systemctl Włącz circusd

Teraz sprawdź usługę przy pomocy kolejne polecenia.

systemctl stan circusd
circusctl stanu

A otrzymasz wynik jak poniżej.

Zainstalować cyrk

- Zainstalować i skonfigurować bazy danych PostgreSQL

Taiga.IO jest użycie PostgreSQL jako bazy danych, i składnika 'Tajga back' jest za pomocą () PostgreSQL>= 9.4) jako bazy danych.

Zainstalować PostgreSQL 9.5 uruchamiając następujące polecenia apt.

sudo apt-get install -y postgresql 9,5 postgresql-contrib 9,5
sudo apt-get install -y postgresql-doc 9,5 postgresql-server-dev 9,5

Jeśli zakończeniu instalacji bazy danych, Uruchom usługę PostgreSQL i umożliwić jej uruchomienie za każdym razem podczas startu systemu.

systemctl start postgresql
systemctl Włącz postgresql

Następny, będziemy tworzyć nową bazę danych i użytkownika dla instalacji Taiga.io.

Zaloguj się, aby użytkownik 'postgres'.

Su - Postgres

Utwórz nową bazę danych i użytkownika o nazwie "Tajga" przy użyciu polecenia poniżej.

CreateUser taiga
CREATEDB Tajga - O Tajga

Baza danych PostgreSQL został zainstalowany, i została utworzona baza danych dla Taiga.io.

Skonfigurować PostgreSQL

- Zainstalować Nodejs

Węzeł jest wymagane przez 'Tajga wydarzenia' - Dodaj repozytorium nodesource nodejs i zainstalować go z polecenia apt.

curl -sL https://deb.nodesource.com/setup_6.x | sudo bash -E -
sudo apt-get install -y nodejs

Wszystkie pakiety potrzebne do instalacji Taiga.io została zainstalowana pomyślnie.

Krok 2 - Dodaj nowego użytkownika Taiga

W tym kroku, zostanie utworzony nowy użytkownik systemu o nazwie "Tajga", i następnie dodać go do grupy sudo.

Uruchom polecenie, aby utworzyć nowego użytkownika 'taiga'.

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

Teraz dodać użytkownika 'taiga' grupy 'sudo'.

usermod - Tajga sudo -G

Teraz Zaloguj się jako 'taiga' i spróbuj użyć polecenia sudo.

Su - tajga
sudo su

Wpisz swoje hasło i upewnij się, że masz uprawnień roota.

Dodaj użytkownika Tajga

Utworzono nowy użytkownik 'taiga'.

Krok 3 - Konfigurowanie Taiga Backend

Tajga back jest zaplecza Taiga.io, który udostępnia interfejs API. Jest napisany w Python i Web frameworku Django.

W tym kroku, możemy będzie zainstalować i skonfigurować taiga składnika 'Tajga back' jako wewnętrznej bazy danych, który udostępnia interfejs API.

Logowania użytkownika 'taiga' i Pobierz kod źródłowy 'Tajga back' z GitHub.

Su - tajga
git clone https://github.com/taigaio/taiga-back.git Tajga tył

Teraz przejdź do katalogu 'Tajga back' i zmieniać oddziału do gałęzi 'stabilna'.

CD Tajga tył /
git checkout stabilne

Następny, Musimy stworzyć nowy python środowiska "Tajga" za pomocą virtualenv.

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

Konfigurowanie Taiga Backend

Zaloguj się do nowego środowiska wirtualnego "Tajga" i zainstalować wszystkie moduły Pythona potrzebne przez tajgi zwrotu za pomocą polecenia pip, jak pokazano poniżej.

WorkOn Tajga
PIP zainstalować requirements.txt - r

Po zakończeniu instalacji wszystkich wymaganych modułów, Musimy wypełnić bazę danych podstawowych początkowych.

Uruchom zainicjować wszystkie polecenia poniżej.

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

Polecenia automatycznie utworzy konto administratora 'admin'z hasłem'123123'.

Następny, Tworzenie nowej konfiguracji za pomocą 'Tajga back' Vim.

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

Wklej następującą konfigurację tam.

od 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 = "myverysecretkey"
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"}
# Usuń oznaczenie komentarza i wypełnić parametry właściwego połączenia
# Włącz email wysyłania.  25
# Usuń oznaczenie komentarza i wypełnić parametry właściwego połączenia
# Aby włączyć logowania/singin github.
#GITHUB_API_CLIENT_ID = "yourgithubclientid"
#GITHUB_API_CLIENT_SECRET = "yourgithubclientsecret"

Zapisz i Zamknij.

Uwaga:

  • Zmieniać 'MEDIA_URL' i 'STATIC_URL' z nazwy domeny.
  • Zmiana 'SECRET_KEY' z klucz tajny.
  • Zmień wartość hasło EVENTS_PUSH_BACKEND_OPTIONS na własną wartość RabbitMQ. W tym przewodniku, Jesteśmy przy użyciu hasła 'aqwe123'.

Teraz test "Tajga back' rezygnować ten rozkazywać poniżej.

WorkOn Tajga
Python manage.py runserver 0.0.0.0: 8000

Polecenie zostanie uruchomione Tajga back publiczny adres IP serwera z portu 8000.

Uruchom Tajga z powrotem pod publiczny adres IP serwera

Otwórz przeglądarkę sieci web i odwiedź adres. Mój jest: http://192.168.33.10:8000/api/v1 /

I powinieneś dostać API 'Tajga back' z formatu JSON, jak poniżej.

Interfejs API w formacie json

Instalacja i konfiguracja 'Tajga back' jako wewnętrznej bazy danych została zakończona.

Krok 4 - Konfigurowanie Taiga Frontend

W tym kroku, będziemy, Pobierz i skonfiguruj frontend Tajga. Frontend będzie obsługiwać wszystkie interfejsy Tajga.

Zaloguj się jako użytkownik Tajga.

Su - tajga

Pobierz skrypt "Tajga przód dist" przy użyciu polecenia git.

CD ~
git clone https://github.com/taigaio/taiga-front-dist.git Tajga przód dist

Po tym, Przejdź do katalogu "Tajga przód dist" i zmieniać oddziału do 'stable'.

CD Tajga przód dist /
git checkout stabilne

Teraz Skopiuj przykładowy konfiguracji 'Tajga przód dist' do 'conf.json' i edytować za pomocą edytora vim.

CP ~/taiga-front-dist/dist/conf.example.json ~/taiga-front-dist/dist/conf.json
Vim ~/taiga-front-dist/dist/conf.json

Upewnij wszystkich konfiguracji jak poniżej i zmienić 'api' i 'eventsUrl', z własną nazwą domeny.

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

Zapisz i Zamknij.

Konfigurowanie Taiga Frontend

Taiga frontend konfiguracja została zakończona.

Krok 5 - Konfigurowanie zdarzeń Taiga

Tajga wydarzenia jest serwerem WebSocket, który pozwala na pokazanie zmian w czasie rzeczywistym na pulpicie nawigacyjnym Taiga.io, i używa RabbitMQ jako broker wiadomości. W tym kroku, będziemy, Pobierz i skonfiguruj 'Tajga wydarzenia'.

Zaloguj się jako użytkownik "Tajga".

Su - tajga

Pobierz kod źródłowy 'Tajga wydarzenia' GitHub za pomocą polecenia git i przejdź do katalogu 'Tajga wydarzenia'.

git clone https://github.com/taigaio/taiga-events.git Tajga wydarzenia
CD Tajga wydarzenia

Teraz zainstalować wszystkie moduły javascript potrzebnych 'Tajga wydarzenia' przy użyciu npm, a następnie zainstaluj pakiet 'Kawa skrypt' do systemu.

npm instalacji
sudo npm zainstalować -g kawy skrypt

Konfigurowanie zdarzeń Taiga

Następny, Skopiuj konfigurację domyślną 'Tajga wydarzenia' do 'config.json' i edytować za pomocą edytora vim.

CP config.example.json config.json
Vim config.json

Dokonać konfiguracji jak poniżej.

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

Zapisz i Zamknij.

Uwaga:

  • Zmień wartość 'url' z rabbitmq użytkownika i hasło.
  • Wartość 'sekret', Upewnij się, że pasuje z 'SECRET_KEY' na 'local.py' plik konfiguracyjny 'Tajga-back'.

Tajga wydarzenia konfiguracja została zakończona.

Krok 6 - Konfigurowanie cyrku i Gunicorn

Cyrku będzie służyć za kontrolowanie i zarządzanie procesem 'Tajga back' i 'Tajga wydarzenia'. 'Tajga wydarzenia' jest uruchomiony jako skrypt kawy, i "Tajga back" jest uruchomiona w ramach Gunicorn.

W tym kroku, do circusd dodamy nowe Tajga wydarzenia i Tajga bac.

Taiga zdarzeń, Utwórz nowy plik "Tajga-events.ini' za pomocą vim.

Vim /etc/circus/conf.d/taiga-events.ini

Konfiguracja wklej poniżej.

[watcher:taiga-events]
working_dir = /home/taiga/taiga-events
cmd = /usr/bin/coffee
args = index.coffee
uid = taiga
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_stream.filename = /home/taiga/logs/taigaevents.stderr.log
stderr_stream.max_bytes = 10485760
stderr_stream.backup_count = 12

Zapisz i Zamknij.

I Tajga-tył, Utwórz nowy plik 'taiga.ini'.

Vim /etc/circus/conf.d/taiga.ini

Wklej następującą konfigurację tam.

[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 = taiga
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
stderr_stream.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

Zapisz i Zamknij.

Następny, Musimy stworzyć nowy katalog 'dzienniki' dla 'Tajga wydarzenia' i 'Tajga back' procesów.

Su - tajga
mkdir -p ~/logs

Teraz uruchom ponownie usługę circusd i sprawdzić wszystkie dostępne procesy.

systemctl ponownie circusd
circusctl stanu

I upewnij się, taiga zdarzeń i 'Tajga back' jest aktywny na liście proces, jak pokazano poniżej.

Konfigurowanie cyrku i Gunicorn

Krok 7 - Konfigurowanie wirtualnego hosta Nginx Tajga

W tym kroku, musimy skonfigurować Nginx wirtualnego hosta dla Taiga.io. Tworzymy nowy plik wirtualnego hosta katalogu 'conf.d' dla naszej instalacji Taiga.io.

Przejdź do katalogu konfiguracji nginx i Usuń plik wirtualnego hosta 'domyślne'.

CD/etc/nginx /
sudo rm -f witryn włączone domyślne

Teraz Utwórz nowy plik wirtualnego hosta 'taiga.conf' w katalogu 'conf.d'.

Vim /etc/nginx/conf.d/taiga.conf

Wklej następującą konfigurację tam.

server {
listen 80 default_server;
server_name _;
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;
}
# Django 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;
}
# Taiga-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;
}
}

Zapisz i Zamknij.

Teraz uruchomić test konfiguracji nginx i upewnij się, jest brak błędu. Następnie uruchom ponownie usługę serwera sieci web.

Nginx -t
systemctl restart nginx

Konfiguracja wirtualnego hosta nginx dla Taiga.io została zakończona.

Konfigurowanie wirtualnego hosta Nginx Tajga

Krok 8 - Testowanie

Otwórz przeglądarkę sieci web i odwiedź nazwę domeny Taiga.io. Mój jest: http://taiga.hakase-labs.co

A ty zdobędziesz domyślną stronę główną Tajga.

Test taiga.io

Teraz kliknij przycisk 'Zaloguj się' w prawym górnym rogu i otrzymasz stronę logowania administratora.

Taiga.IO logowanie

Załoguj się przez użytkownika domyślnego 'admin'i hasło'123123'.

A otrzymasz wynik jak poniżej.

Konto administratora

Następny, możemy będzie zresetować domyślne hasło admina.

Kliknij przycisk 'administrator' w prawym górnym rogu, następnie kliknij 'Zmień hasło'.

Zmiana hasła administratora

Teraz wpisz stare hasło '123123' i nowe hasło, jak chcesz, następnie kliknij 'Zapisz'.

Zmień hasło

Instalacja i konfiguracja dla Taiga.io na Ubuntu 16.04 zakończone sukcesem.

Odwołanie

Źródła