Taiga est une application gratuite et open source pour la gestion de projet. Contrairement à d'autres outils de gestion de projet, Taiga utilise une approche agile incrémentielle pour gérer le développement du projet. Taiga est une application très puissante et entièrement personnalisable. Le backend de Taiga est écrit en Python en utilisant le framework Django. Le frontend est écrit en JavaScript en utilisant les frameworks CoffeeScript et AngularJS. Taiga comprend des fonctionnalités telles que la collaboration de projet, le tableau Kanban, le suivi des bogues, les rapports, le suivi du temps, les backlogs, le wiki et plus encore.
Conditions préalables
- Une instance de serveur Vultr CentOS 7 avec au moins 1 Go de RAM.
- Un utilisateur sudo .
Dans ce didacticiel, nous utiliserons taiga.example.com
le nom de domaine pointé vers le serveur. Remplacez toutes les occurrences de taiga.example.com
par votre nom de domaine réel.
Mettez à jour votre système de base à l'aide du guide Comment mettre à jour CentOS 7 . Une fois votre système mis à jour, installez PostgreSQL.
Installer PostgreSQL
PostgreSQL est un système de base de données relationnelle objet connu pour sa stabilité et sa vitesse. Taiga utilise PostgreSQL pour stocker sa base de données. Ajoutez le référentiel PostgreSQL dans le système.
sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm
Installez le serveur de base de données PostgreSQL.
sudo yum -y install postgresql10-server postgresql10-contrib postgresql10
Initialisez la base de données.
sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
Démarrez le serveur PostgreSQL et activez-le pour démarrer automatiquement au démarrage.
sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10
Modifiez le mot de passe de l'utilisateur PostgreSQL par défaut.
sudo passwd postgres
Connectez-vous en tant qu'utilisateur PostgreSQL.
sudo su - postgres
Créez un nouvel utilisateur PostgreSQL pour Taiga.
createuser taiga
PostgreSQL fournit le psql
shell pour exécuter des requêtes sur la base de données. Basculez vers le shell PostgreSQL.
psql
Définissez un mot de passe pour l'utilisateur nouvellement créé pour la base de données Taiga.
ALTER USER taiga WITH ENCRYPTED password 'DBPassword';
Remplacez-le DBPassword
par un mot de passe sécurisé. Créez une nouvelle base de données pour l'installation de la taïga.
CREATE DATABASE taiga OWNER taiga;
Sortez du psql
shell.
\q
Passez à l' sudo
utilisateur.
exit
Installez Python 3
Python 2.7 est préinstallé sur un serveur CentOS 7, mais Taiga nécessite Python version 3.4 ou ultérieure.
Nous allons installer Python version 3.6 à partir des sources. Installez les outils de compilation et le compilateur requis.
sudo yum -y install gcc autoconf flex bison libjpeg-turbo-devel freetype-devel zlib-devel zeromq3-devel gdbm-devel ncurses-devel automake libtool libffi-devel curl git tmux libxml2-devel libxslt-devel openssl-devel gcc-c++
Téléchargez le code source Python.
wget https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tar.xz
Extrayez et configurez l'installation Python.
tar xf Python-3.6.3.tar.xz
cd Python-3.6.3
./configure --enable-optimizations --prefix=/usr
Effectuez une installation alternative.
sudo make altinstall
Remarque : les installations alternatives installent Python 3.6 sans remplacer la version par défaut de Python. Si vous remplacez le Python par défaut dans CentOS 7, il peut casser le YUM
gestionnaire de référentiel.
Vous pourrez maintenant vérifier sa version.
python3.6 -V
Vous devriez voir ce qui suit.
[user@vultr Python-3.6.3]$ python3.6 -V
Python 3.6.3
Installez Python Virtual Environment à l'aide de pip
.
sudo pip3.6 install virtualenv virtualenvwrapper
sudo pip3.6 install --upgrade setuptools pip
L'environnement virtuel Python est utilisé pour créer un environnement virtuel isolé pour un projet Python. Un environnement virtuel contient ses propres répertoires d'installation et ne partage pas les bibliothèques avec les environnements virtuels globaux et autres.
Installer RabbitMQ
Taiga utilise RabbitMQ pour traiter la file d'attente de messages. RabbitMQ nécessite que les bibliothèques Erlang fonctionnent. Installez Erlang.
sudo yum -y install erlang
Importez la clé de signature RabbitMQ GPG.
sudo rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc
Installez RabbitMQ.
sudo yum -y install https://dl.bintray.com/rabbitmq/rabbitmq-server-rpm/rabbitmq-server-3.6.12-1.el7.noarch.rpm
Démarrez et activez le serveur RabbitMQ.
sudo systemctl start rabbitmq-server
sudo systemctl enable rabbitmq-server
Ajoutez l'utilisateur RabbitMQ et vhost. Fournissez également l'autorisation à l'utilisateur sur l'hôte.
sudo rabbitmqctl add_user taiga StrongMQPassword
sudo rabbitmqctl add_vhost taiga
sudo rabbitmqctl set_permissions -p taiga taiga ".*" ".*" ".*"
Assurez-vous de remplacer StrongMQPassword
par un mot de passe sécurisé.
Installer Nodejs
Node.js version 7 ou ultérieure est requis pour compiler le frontend de la taïga. Ajoutez le référentiel Node.js version 8.
curl -sL https://rpm.nodesource.com/setup_8.x | sudo -E bash -
Installez Node.js et l' pwgen
utilitaire.
sudo yum install -y nodejs pwgen
pwgen
sera utilisé plus tard pour générer une chaîne secrète forte. Installez CoffeeScript, car il sera utilisé pour compiler des fichiers Taiga écrits avec le framework CoffeeScript.
sudo npm install -g coffee-script gulp
Installer la taïga backend
Ajoutez un nouvel utilisateur système pour Taiga pour vous assurer que les processus Taiga s'exécutent en tant qu'utilisateur non privilégié.
sudo useradd -s /bin/bash taiga
sudo su - taiga
Remarque : à partir de maintenant, toutes les commandes doivent être exécutées en tant qu'utilisateur non privilégié taiga
jusqu'à ce que vous soyez invité à revenir à l' sudo
utilisateur.
Créez un nouveau répertoire pour stocker les fichiers journaux.
mkdir -p ~/logs
Clonez le référentiel backend Taiga de GitHub et extrayez la dernière branche stable.
git clone https://github.com/taigaio/taiga-back.git taiga-back
cd taiga-back
git checkout stable
Configurez virtualenvwrapper
pour utiliser Python 3.6 au lieu du Python par défaut.
echo "VIRTUALENVWRAPPER_PYTHON='/bin/python3.6'" >> ~/.bashrc
echo "source /usr/bin/virtualenvwrapper.sh" >> ~/.bashrc
Enfin, sourcez le ~/.bashrc
fichier.
source ~/.bashrc
Créez maintenant un nouvel environnement virtuel pour Taiga en utilisant Python 3.6.
mkvirtualenv -p /bin/python3.6 taiga
pip3.6 install --upgrade setuptools
Installez les dépendances Python requises à l'aide de pip
.
pip3.6 install -r requirements.txt
Remplissez la base de données avec les données initiales nécessaires.
python3.6 manage.py migrate --noinput
python3.6 manage.py loaddata initial_user
python3.6 manage.py loaddata initial_project_templates
python3.6 manage.py compilemessages
python3.6 manage.py collectstatic --noinput
Les commandes ci-dessus écrivent des données dans la base de données PostgreSQL. Taiga envoie également des données de démonstration ou des échantillons qui peuvent être utiles pour évaluer le produit. Si vous souhaitez installer les exemples de données, exécutez ce qui suit.
python3.6 manage.py sample_data
Remarque : l' installation des exemples de données est facultative et vise uniquement à évaluer le produit.
Avant de créer le fichier de configuration pour le backend de la taïga, nous devons générer une chaîne secrète. Cette chaîne sera utilisée pour crypter les données de session.
Générez une chaîne aléatoire de 64 caractères.
pwgen -s -1 64
Vous devriez voir la sortie comme une chaîne aléatoire.
(taiga) [taiga@vultr taiga-back]$ pwgen -s -1 64
CZfjWjHctPwnLZsDysWqaZcYfRCviHbI4fVRwfhpbtAHPNBtmkcegpwpYjTtEziJ
Créez un nouveau fichier de configuration pour le backend de la taïga.
nano ~/taiga-back/settings/local.py
Remplissez le fichier avec le code suivant.
from .common import *
MEDIA_URL = "https://taiga.example.com/media/"
STATIC_URL = "https://taiga.example.com/static/"
SITES["front"]["scheme"] = "https"
SITES["front"]["domain"] = "taiga.example.com"
SECRET_KEY = "Generated_Secret_Key"
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:StrongMQPassword@localhost:5672/taiga"}
# Uncomment and populate with proper connection parameters
# for enable email sending. EMAIL_HOST_USER should end by @domain.tld
#EMAIL_BACKEND = "django.core.mail.backends.smtp.EmailBackend"
#EMAIL_USE_TLS = False
#EMAIL_HOST = "mail.example.com"
#EMAIL_HOST_USER = "[email protected]"
#EMAIL_HOST_PASSWORD = "SMTPPassword"
#EMAIL_PORT = 25
# Uncomment and populate with proper connection parameters
# for enable github login/singin.
#GITHUB_API_CLIENT_ID = "yourgithubclientid"
#GITHUB_API_CLIENT_SECRET = "yourgithubclientsecret"
Assurez-vous de remplacer l'exemple de nom de domaine par le nom réel dans le code ci-dessus. Remplacez également Generated_Secret_Key
par la clé secrète réelle et StrongMQPassword
par le mot de passe réel pour l'utilisateur de la file d'attente de messages de la taïga. Si vous avez un serveur SMTP prêt et que vous souhaitez utiliser immédiatement les fonctions d'envoi d'e-mails, vous pouvez décommenter les options d'e-mail et définir les valeurs appropriées. Si vous n'avez pas de serveur de messagerie prêt, vous pouvez ignorer la configuration de la fonction de messagerie pour l'instant et la définir plus tard dans ce fichier de configuration.
Si vous souhaitez activer la connexion GitHub, créez une application dans GitHub et fournissez l'ID client API et le secret client.
Pour vérifier immédiatement si le backend Taiga peut être démarré, exécutez le serveur Django intégré.
workon taiga
python manage.py runserver
Vous verrez la sortie suivante si le serveur a démarré avec succès.
(taiga) [taiga@vultr taiga-back]$ workon taiga
(taiga) [taiga@vultr taiga-back]$ python manage.py runserver
Trying import local.py settings...
Trying import local.py settings...
Performing system checks...
System check identified no issues (0 silenced).
October 25, 2017 - 07:07:28
Django version 1.10.6, using settings 'settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
Pour vérifier si l'API est accessible, ouvrez une autre session de terminal et exécutez ce qui suit.
curl http://127.0.0.1:8000/api/v1/
Vous verrez une sortie similaire renvoyée par l'appel d'API.
[user@vultr ~]$ curl http://127.0.0.1:8000/api/v1/
{"locales": "http://127.0.0.1:8000/api/v1/locales", "auth": "http://127.0.0.1:8000/api/v1/auth", "users": "http://127.0.0.1:8000/api/v1/users", "roles": "http://127.0.0.1:8000/api/v1/roles", "user-storage": "http://127.0.0.1:8000/api/v1/user-storage", "notify-policies": "http://127.0.0.1:8000/api/v1/notify-policies", "projects": "http://127.0.0.1:8000/api/v1/projects", "projects/(?P<resource_id>\\d+)/fans": "http://127.0.0.1:8000/api/v1/projects/(?P<resource_id>\\d+)/fans", "projects/(?P<resource_id>\\d+)/watchers": "http://127.0.0.1:8000/api/v1/projects/(?P<resource_id>\\d+)/watchers", "project-templates": "http://127.0.0.1:8000/api/v1/project-templates",
Arrêtez le serveur principal de la taïga en appuyant sur " Ctrl + C
" et désactivez l'environnement virtuel.
deactivate
Installer le frontend
Le frontend de la taïga est le composant de la taïga qui sert l'interface utilisateur Web. Clonez le référentiel frontal de la taïga à partir de Github et extrayez la dernière branche stable.
cd ~
git clone https://github.com/taigaio/taiga-front-dist.git taiga-front-dist
cd taiga-front-dist
git checkout stable
Créez un nouveau fichier de configuration pour le frontend de la taïga.
nano ~/taiga-front-dist/dist/conf.json
Remplissez le fichier avec ceci.
{
"api": "https://taiga.example.com/api/v1/",
"eventsUrl": "wss://taiga.example.com/events",
"eventsMaxMissedHeartbeats": 5,
"eventsHeartbeatIntervalTime": 60000,
"eventsReconnectTryInterval": 10000,
"debug": true,
"debugInfo": false,
"defaultLanguage": "en",
"themes": ["taiga"],
"defaultTheme": "taiga",
"publicRegisterEnabled": true,
"feedbackEnabled": true,
"privacyPolicyUrl": null,
"termsOfServiceUrl": null,
"maxUploadFileSize": null,
"contribPlugins": [],
"tribeHost": null,
"importers": [],
"gravatar": true
}
Assurez-vous de remplacer le example
domaine par le domaine réel. Vous pouvez également modifier la langue par défaut et d'autres paramètres dans la configuration ci-dessus.
Installer les événements de la taïga
Outre le frontend et le backend, nous devons également installer les événements de la taïga. Les événements de la taïga est un serveur de socket Web, et il permet au frontend de la taïga d'afficher les changements en temps réel dans les modules tels que le backlog, Kanban et plus encore. Il utilise le serveur RabbitMQ pour le traitement des messages.
Clonez le référentiel des événements de la taïga depuis Github.
cd ~
git clone https://github.com/taigaio/taiga-events.git taiga-events
cd taiga-events
Installez les dépendances Node.js à l'aide de npm
.
npm install
Créez un nouveau fichier de configuration pour les événements de la taïga.
nano ~/taiga-events/config.json
Remplissez le fichier avec les éléments suivants.
{
"url": "amqp://taiga:StrongMQPassword@localhost:5672/taiga",
"secret": "Generated_Secret_Key",
"webSocketServer": {
"port": 8888
}
}
Remplacez Generated_Secret_Key
par la clé secrète réelle de 64 caractères que vous avez générée dans le passé. La clé secrète doit être exactement la même que la clé que vous avez fournie dans le fichier de configuration du backend de la taïga. En outre, mettez à jour le StrongMQPassword
avec le mot de passe réel pour l'utilisateur de la file d'attente de messages Taiga.
Circus est un gestionnaire de processus pour les applications Python. Nous utiliserons Circus pour gérer le backend et les événements de la taïga.
Revenez à l' sudo
utilisateur.
exit
Remarque : à partir de maintenant, vous devrez exécuter les commandes à l'aide de l' sudo
utilisateur.
Installez Circus à l'aide de pip
.
sudo pip3.6 install circus
Créez de nouveaux répertoires pour stocker les configurations de cirque.
sudo mkdir /etc/circus
sudo mkdir /etc/circus/conf.d
Créez le fichier de configuration par défaut pour Circus.
sudo nano /etc/circus/circus.ini
Remplissez le fichier avec la configuration suivante.
[circus]
check_delay = 5
endpoint = tcp://127.0.0.1:5555
pubsub_endpoint = tcp://127.0.0.1:5556
include = /etc/circus/conf.d/*.ini
Créez un nouveau fichier de configuration Circus pour exécuter le backend Taiga.
sudo nano /etc/circus/conf.d/taiga.ini
Remplissez le fichier avec les éléments suivants.
[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.6/site-packages
Créez une nouvelle configuration de cirque pour exécuter les événements de la taïga.
sudo nano /etc/circus/conf.d/taiga-events.ini
Remplissez le fichier avec les éléments suivants.
[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
Nous devons maintenant créer un systemd
fichier de service pour exécuter Circus. L'utilisation systemd
garantit que Circus démarre automatiquement lors du redémarrage et des échecs.
sudo nano /etc/systemd/system/circus.service
Remplissez le fichier.
[Unit]
Description=Circus process manager
After=syslog.target network.target nss-lookup.target
[Service]
Type=simple
ExecReload=/usr/bin/circusctl reload
ExecStart=/usr/bin/circusd /etc/circus/circus.ini
Restart=always
RestartSec=5
[Install]
WantedBy=default.target
Démarrez Circus et activez le démarrage automatique au démarrage.
sudo systemctl start circus
sudo systemctl enable circus
Vérifiez l'état du cirque.
circusctl status
Vous verrez la sortie suivante.
[user@vultr ~]$ circusctl status
taiga: active
taiga-events: active
Maintenant, nous avons installé et exécuté Taiga avec succès. Avant de pouvoir l'utiliser, nous devons exposer l'installation à l'aide de n'importe quel serveur Web de production.
Installer Nginx en tant que proxy inverse
Nous utiliserons le serveur Web Nginx comme proxy inverse pour servir l'application aux utilisateurs. Nous obtiendrons et installerons également des certificats SSL auprès de Let's Encrypt.
Installez Nginx et Certbot. Certbot est le client officiel de délivrance des certificats pour Let's Encrypt CA.
sudo yum -y install nginx certbot
Ajustez vos paramètres de pare-feu pour autoriser la norme HTTP
et les HTTPS
ports à travers le pare-feu car Certbot doit établir une connexion HTTP pour vérifier l'autorité de domaine.
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
Remarque : Pour obtenir des certificats de Let's Encrypt CA, vous devez vous assurer que le domaine pour lequel vous souhaitez générer les certificats est dirigé vers le serveur. Sinon, apportez les modifications nécessaires aux enregistrements DNS de votre domaine et attendez que le DNS se propage avant de refaire la demande de certificat. Certbot vérifie l'autorité de domaine avant de fournir les certificats.
Utilisez maintenant le serveur Web intégré dans Certbot pour générer les certificats pour votre domaine.
sudo certbot certonly --standalone -d taiga.example.com
Les certificats générés sont susceptibles d'être stockés dans le /etc/letsencrypt/live/taiga.example.com/
répertoire. Le certificat SSL sera conservé sous la forme fullchain.pem
et la clé privée sera enregistrée sous privkey.pem
.
Les certificats Let's Encrypt expirent dans 90 jours, il est donc recommandé de configurer le renouvellement automatique des certificats à l'aide des tâches Cron. Cron est un service système utilisé pour exécuter des tâches périodiques.
Ouvrez le fichier de tâche cron.
sudo crontab -e
Ajoutez la ligne suivante.
0 0 * * * /usr/bin/certbot renew --quiet
Le travail cron ci-dessus s'exécutera quotidiennement à minuit. Si le certificat doit expirer, il renouvellera automatiquement les certificats.
Générez un Diffie-Hellman
paramètre fort . Il fournit une couche de sécurité supplémentaire pour l'échange de données entre l'hôte et le serveur.
sudo openssl dhparam -out /etc/ssl/dhparam.pem 2048
Créez un nouveau bloc serveur Nginx pour servir le frontend de la taïga.
sudo nano /etc/nginx/conf.d/taiga.conf
Remplissez le fichier avec les éléments suivants.
server {
listen 80;
server_name taiga.example.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl;
server_name taiga.example.com;
access_log /home/taiga/logs/nginx.access.log;
error_log /home/taiga/logs/nginx.error.log;
large_client_header_buffers 4 32k;
client_max_body_size 50M;
charset utf-8;
index index.html;
# 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;
}
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;
}
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;
}
add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";
add_header Public-Key-Pins 'pin-sha256="klO23nT2ehFDXCfx3eHTDRESMz3asj1muO+4aIdjiuY="; pin-sha256="633lt352PKRXbOwf4xSEa1M517scpD3l5f79xMD9r9Q="; max-age=2592000; includeSubDomains';
ssl on;
ssl_certificate /etc/letsencrypt/live/taiga.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/taiga.example.com/privkey.pem;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!3DES:!MD5:!PSK';
ssl_session_cache shared:SSL:10m;
ssl_dhparam /etc/ssl/dhparam.pem;
ssl_stapling on;
ssl_stapling_verify on;
}
Veillez à modifier le nom de domaine et le chemin d'accès aux certificats SSL.
Vous pouvez maintenant redémarrer le serveur Web Nginx et l'activer pour démarrer automatiquement au démarrage.
sudo systemctl restart nginx
sudo systemctl status nginx
Enfin, corrigez la propriété et l'autorisation des fichiers Taiga.
sudo chown -R taiga:taiga /home/taiga/
sudo chmod o+x /home/taiga/
Conclusion
Vous pouvez maintenant accéder à l'installation de la taïga en allant sur https://taiga.example.com
. Connectez-vous en utilisant le compte administrateur initial avec le nom d'utilisateur " admin
" et le mot de passe " 123123
". Votre installation est maintenant prête pour une utilisation en production. Commencez par créer un nouveau projet ou évaluer le produit. Si vous gérez déjà un projet sur Github, Jira ou Trello, vous pouvez facilement importer les projets dans Taiga en utilisant les importateurs .