Taiga est un système de gestion de projet open source qui vous aide à gérer des projets simples et complexes pour les startups. Il s'agit d'une application simple, puissante et personnalisable spécialement conçue pour les développeurs et concepteurs Agiles pour gérer le développement du projet. Le backend de Taiga est écrit en Python et Django tandis que le frontend est écrit en JavaScript à l'aide des frameworks CoffeeScript et AngularJS. Il offre plusieurs fonctionnalités, notamment la collaboration de projet, le tableau Kanban, le suivi des bogues, les rapports, le suivi du temps, les backlogs, le wiki, etc.
Dans ce tutoriel, nous allons vous montrer comment installer le système de gestion de projet Taiga sur CentOS 8.
Prérequis
- Un VPS CentOS 8 (nous utiliserons notre plan SSD 2 VPS)
- Accès au compte utilisateur root (ou accès à un compte administrateur avec privilèges root)
Étape 1 :Connectez-vous au serveur et mettez à jour les packages du système d'exploitation du serveur
Tout d'abord, connectez-vous à votre serveur CentOS 8 via SSH en tant qu'utilisateur root :
ssh root@IP_Address -p Port_number
Vous devrez remplacer 'IP_Address' et 'Port_number' par l'adresse IP et le numéro de port SSH respectifs de votre serveur. De plus, remplacez "root" par le nom d'utilisateur du compte administrateur si nécessaire.
Avant de commencer, vous devez vous assurer que tous les packages CentOS installés sur le serveur sont à jour. Vous pouvez le faire en exécutant les commandes suivantes :
dnf mise à jour -y
Étape 2 :Premiers pas
Tout d'abord, vous devrez configurer un nom d'hôte complet pour votre système. Vous pouvez le configurer avec la commande suivante :
hostnamectl set-hostname taiga.example.com
Ensuite, installez les autres dépendances requises avec la commande suivante :
dnf install epel-release redis nginx git unzip curl pwgen @python38 python38-devel virtualenv -y
Ensuite, installez le virtualenvwrapper avec la commande suivante :
pip3 installer virtualenvwrapper
Ensuite, démarrez les services Nginx et Redis et autorisez-les à démarrer au redémarrage du système :
systemctl démarrer nginx redissystemctl activer nginx redis
Étape 3 :Installer Node.js
Par défaut, la dernière version de Node.js n'est pas disponible dans CentOS 8. Vous devrez donc activer le référentiel Node.js dans votre système.
Vous pouvez l'activer avec la commande suivante :
activer le module dnf nodejs :12
Ensuite, installez le Node.js avec la commande suivante :
dnf installer nodejs -y
Après avoir installé Node.js, vérifiez la version installée de Node.js avec la commande suivante :
node --version
Vous devriez obtenir le résultat suivant :
v12.18.4
Étape 4 :Installer et configurer RabbitMQ
Ensuite, vous devrez installer le serveur RabbitMQ sur votre système. Par défaut, il n'est pas disponible dans le dépôt par défaut CentOS 8.
Tout d'abord, ajoutez le référentiel RabbitMQ avec la commande suivante :
curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | bas
Ensuite, installez le serveur RabbitMQ avec la commande suivante :
dnf install rabbitmq-server -y
Une fois installé, démarrez le service RabbitMQ et activez-le au redémarrage du système :
systemctl start rabbitmq-server.servicesystemctl enable rabbitmq-server.service
Ensuite, ajoutez Taiga iser, hôte virtuel et définissez les autorisations avec la commande suivante :
rabbitmqctl add_user taiga passwordrabbitmqctl add_vhost taigarabbitmqctl set_permissions -p taiga taiga ".*" ".*" ".*"
Étape 5 :Installer et configurer PostgreSQL
Vous pouvez installer le serveur PostgreSQL en exécutant la commande suivante :
installation dnf @postgresql -y
Une fois l'installation terminée, initialisez la base de données avec la commande suivante :
/usr/bin/postgresql-setup initdb
Ensuite, démarrez le service PostgreSQL et autorisez-le à démarrer au redémarrage du système avec la commande suivante :
systemctl démarrer postgresqlsystemctl activer postgresql
Ensuite, définissez le mot de passe pour PostgreSQL avec la commande suivante :
passwd postgres
Il vous sera demandé de définir un nouveau mot de passe comme indiqué ci-dessous :
Nouveau mot de passe :retapez le nouveau mot de passe :passwd :tous les jetons d'authentification ont été mis à jour avec succès.
Ensuite, basculez l'utilisateur vers postgres et créez un utilisateur pour taiga :
su - postgrescreateuser taïga
Ensuite, connectez-vous au shell PostgreSQL avec la commande suivante :
[postgres@taïga ~]$ psql
Une fois connecté, vous devriez obtenir le résultat suivant :
psql (10.14)Tapez "help" pour obtenir de l'aide.
Ensuite, définissez le mot de passe pour l'utilisateur taiga et créez une base de données avec la commande suivante :
postgres=# ALTER USER taiga AVEC le mot de passe CRYPTÉ 'password';postgres=# CREATE DATABASE taiga OWNER taiga;
Ensuite, quittez PostgreSQL avec la commande suivante :
\qexit
Étape 6 :Installer et configurer le backend Taiga
Tout d'abord, vous devrez créer un utilisateur pour exécuter Taiga. Vous pouvez le créer avec la commande suivante :
adduser taigapasswd taiga
Ensuite, ajoutez l'utilisateur taiga au groupe wheel pour les privilèges sudo :
usermod -aG roue taïga
Ensuite, basculez l'utilisateur vers taiga avec la commande suivante :
su - taïga
Créez ensuite un répertoire de journaux :
mkdir -p ~/logs
Ensuite, téléchargez la dernière version du backend Taiga avec la commande suivante :
git clone https://github.com/taigaio/taiga-back.git
Une fois téléchargé, changez le répertoire en taiga-back et consultez la version stable :
cd taiga-backgit checkout stable
Ensuite, installez les dépendances requises avec la commande suivante :
sudo pip3 install -r requirements.txt
Ensuite, migrez la base de données avec la commande suivante :
python3 manage.py migrate --noinputpython3 manage.py loaddata initial_userpython3 manage.py loaddata initial_project_templatespython3 manage.py compilemessagespython3 manage.py collectstatic --noinput
Créez ensuite un fichier de configuration local.py :
nano ~/taiga-back/settings/local.py
Ajoutez les lignes suivantes :
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 ="votre-clé-secrète"DEBUG =FalsePUBLIC_REGISTER_ENABLED =TrueDEFAULT_FROM_EMAIL ="[email protected]" SERVER_EMAIL =DEFAULT_FROM_EMAIL#CELERY_ENABLED =TrueEVENTS_PUSH_BACKEND ="taiga.events.backends.rabbitmq.EventsPushBackend"EVENTS_PUSH_BACKEND_OPTIONS ={"url":"amqp://taiga:password@localhost:5672/taiga"}
Enregistrez et fermez le fichier puis démarrez le serveur pour vérifier l'installation :
python3 manage.py runserver
Si tout va bien, vous devriez obtenir le résultat suivant :
Essai d'importation des paramètres local.py…Essayage d'importation des paramètres local.py…Exécution des vérifications du système…La vérification du système n'a identifié aucun problème (0 silencieux).15 novembre 2020 - 08:50:41Django version 2.2.17, en utilisant les paramètres 'settings 'Démarrage du serveur de développement à http://127.0.0.1:8000/Quittez le serveur avec CONTROL-C. Appuyez sur CTRL+C pour arrêter le serveur.
Étape 7 :Configurer l'interface Taiga
Tout d'abord, basculez l'utilisateur vers taïga et téléchargez la dernière version de l'interface taïga avec la commande suivante :
su - clone taigagit https://github.com/taigaio/taiga-front-dist.git
Une fois téléchargé, changez le répertoire en frontend taiga et vérifiez la version stable :
cd taiga-front-distgit checkout stable
Ensuite, copiez l'exemple de fichier de configuration avec la commande suivante :
cp ~/taiga-front-dist/dist/conf.example.json ~/taiga-front-dist/dist/conf.json
Modifiez ensuite le fichier de configuration :
nano ~/taiga-front-dist/dist/conf.json
Définissez votre API et eventsUrl comme indiqué ci-dessous :
{ "api":"http://taiga.example.com/api/v1/", "eventsUrl":"ws://taiga.example.com/events", "eventsMaxMissedHeartbeats":5, " eventsHeartbeatIntervalTime":60000, "eventsReconnectTryInterval":10000, "debug":vrai, "debugInfo":faux, "defaultLanguage":"fr", "themes":["taïga"], "defaultTheme":"taïga", " defaultLoginEnabled":vrai, "publicRegisterEnabled":vrai, "feedbackEnabled":vrai, "supportUrl":"https://tree.taiga.io/support/", "privacyPolicyUrl":null, "termsOfServiceUrl":null, "GDPRUrl " :null, "maxUploadFileSize":null, "contribPlugins":[], "tagManager":{ "accountId":null }, "tribeHost":null, "importers":[], "gravatar":false, "rtlLanguages" ":["fa"]}
Enregistrez et fermez le fichier lorsque vous avez terminé.
Étape 8 :Configurer les événements Taiga
Tout d'abord, basculez l'utilisateur vers taiga et téléchargez la dernière version des événements taiga :
su - clone taigagit https://github.com/taigaio/taiga-events.git taiga-events
Une fois téléchargé, changez le répertoire en événements taiga et installez toutes les dépendances requises avec la commande suivante :
installation cd taiga-eventsnpm
Ensuite, copiez l'exemple de fichier de configuration :
cp config.example.json config.json
Ensuite, modifiez le fichier de configuration et définissez votre URL et votre clé secrète RabbitMQ :
nano config.json
Ajoutez les lignes suivantes :
{ "url":"amqp://taiga:password@localhost:5672/taiga", "secret":"votre-clé-secrète", "webSocketServer":{ "port":8888 }}Enregistrez et fermez le fichier puis quittez l'utilisateur taïga avec la commande suivante :
quitterÉtape 9 :Créer un fichier de service Systemd pour Taiga
Ensuite, vous devrez créer un fichier de service systemd pour gérer les services Taiga.
Tout d'abord, créez un fichier de service systemd pour les événements taiga avec la commande suivante :
nano /etc/systemd/system/taiga_events.serviceAjoutez les lignes suivantes :
[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[Install]WantedBy=default.targetEnregistrez et fermez le fichier puis rechargez le démon systemd avec la commande suivante :
rechargement du démon systemctlEnsuite, démarrez le service taiga_events et activez-le pour qu'il démarre au redémarrage du système :
systemctl start taiga_eventssystemctl enable taiga_eventsEnsuite, créez un fichier de service systemd pour taiga avec la commande suivante :
nano /etc/systemd/system/taiga.serviceAjoutez les lignes suivantes :
[Unit]Description=taiga_backAfter=network.target[Service]User=taigaEnvironment=PYTHONUNBUFFERED=trueWorkingDirectory=/home/taiga/taiga-backExecStart=/usr/local/bin/gunicorn --workers 4 --timeout 60 - b 127.0.0.1:8001 taiga.wsgiRestart=alwaysRestartSec=3[Install]WantedBy=default.targetEnregistrez et fermez le fichier puis rechargez le démon systemd avec la commande suivante :
rechargement du démon systemctlEnsuite, démarrez le service Taiga et activez-le au redémarrage du système avec la commande suivante :
systemctl start taigasystemctl enable taigaÉtape 10 :Configurer Nginx pour Taiga
Ensuite, vous devrez configurer Nginx pour servir Taiga. Tout d'abord, créez un fichier de configuration d'hôte virtuel Nginx avec la commande suivante :
nano /etc/nginx/conf.d/taiga.confAjoutez les lignes suivantes :
serveur { écoute 80 ; nom_serveur taiga.example.com large_client_header_buffers 4 32k; client_max_body_size 50M ; jeu de caractères utf-8 ; access_log /home/taiga/logs/nginx.access.log ; error_log /home/taiga/logs/nginx.error.log; # Emplacement de l'interface / { root /home/taiga/taiga-front-dist/dist/ ; try_files $uri $uri/ /index.html; } # Emplacement du backend /api { proxy_set_header Hôte $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 désactivé ; } # Emplacement de l'accès administrateur (/admin/) /admin { proxy_set_header Hôte $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 désactivé ; } # Emplacement des fichiers statiques /static { alias /home/taiga/taiga-back/static; } # Emplacement des fichiers multimédias /media { alias /home/taiga/taiga-back/media; } # Emplacement des événements /events { proxy_pass http://127.0.0.1:8888/events; proxy_http_version 1.1 ; proxy_set_header Mettre à jour $http_upgrade ; proxy_set_header Connexion "mise à niveau" ; proxy_connect_timeout 7j ; proxy_send_timeout 7j ; proxy_read_timeout 7j ; }}Enregistrez et fermez le fichier puis redémarrez le service Nginx pour appliquer les modifications :
systemctl redémarrer nginxEnsuite, fournissez les autorisations nécessaires à la taïga avec la commande suivante :
chown -R taiga:taiga /home/taiga/chmod o+x /home/taiga/chmod o+rx ~taiga/taiga-back/mediaÉtape 11 :Accéder à l'interface Web de la taïga
Maintenant, ouvrez votre navigateur Web et accédez à l'interface Web de Taiga à l'aide de l'URL http://taiga.example.com. Vous serez redirigé vers la page de connexion de Taiga :
Indiquez le nom d'utilisateur par défaut en tant qu'administrateur et le mot de passe en tant que 123123, puis cliquez sur Connexion bouton. Vous devriez voir le tableau de bord par défaut de Taiga dans l'écran suivant :
Bien sûr, vous n'avez rien à faire si vous utilisez l'un de nos services d'hébergement VPS Linux,
auquel cas vous pouvez simplement demander à nos administrateurs Linux experts de le configurer pour vous. Ils sont disponibles 24h/24 et 7j/7 et prendront immédiatement en charge votre demande.
PS. Si vous avez aimé cet article, partagez-le avec vos amis sur les réseaux sociaux en utilisant les boutons à gauche ou laissez simplement une réponse ci-dessous. Merci.