Redmine est un outil open source de gestion de projet et de suivi des problèmes basé sur le framework Ruby on Rails. Il est basé sur le Web, vous pouvez donc l'utiliser à partir de n'importe quelle plate-forme cliente qui fournit un navigateur Web. Il est bien adapté aux équipes multilingues car il contient des traductions pour 42 langues. Vous pouvez suivre plusieurs projets dans une seule installation, il dispose d'un support intégré pour les actualités, la gestion des documents, la gestion des fichiers, un wiki de support. Vous pouvez le connecter à d'autres applications par l'authentification LDAP et l'API REST.
Ce didacticiel couvre l'installation de Redmine 3 avec Nginx comme serveur Web et MySQL comme base de données sur le système d'exploitation Ubuntu 15.10 (64 bits).
Prérequis
- Ubuntu 15.10 - 64 bits.
- Privilèges racine.
Étape 1 - Installer les dépendances
Redmine a beaucoup de dépendances mais nous pouvons les installer facilement avec apt. La première étape consiste à devenir l'utilisateur root, puis à mettre à jour votre référentiel Ubuntu. Toutes les étapes suivantes de ce didacticiel sont exécutées en tant qu'utilisateur root, c'est pourquoi j'utilise "sudo su" au lieu d'ajouter suo à chaque commande.
sudo su
apt-get update
Installez les dépendances de Redmine avec la commande apt ci-dessous :
apt-get install mysql-server mysql-client libmysqlclient-dev imagemagick libmagickwand-dev libcurl4-openssl-dev git-core subversion
Le programme d'installation vous demandera un nouveau mot de passe root MySQl, entrez-y un nouveau mot de passe MySQL sécurisé.
Étape 2 - Installer Ruby et RVM
Dans cette étape, nous allons installer la dernière version de RVM et Ruby 2.0. Redmine 3.2 stable prend en charge Ruby version 2.0, nous pouvons donc l'utiliser ici. RMV (Ruby Version Manager) est un outil de ligne de commande pratique qui vous permet d'installer, de gérer et de travailler avec plusieurs environnements Ruby.
gpg --keyserver hkp://keys.gnupg.net --recv-keys D39DC0E3
curl -L https://get.rvm.io | bash -s stable --ruby=2.0.0
Nous devons maintenant recharger RVM et l'ajouter à .bashrc pour un rechargement automatique :
source /usr/local/rvm/scripts/rvm
echo '[[ -s "/usr/local/rvm/scripts/rvm" ]] &&source "/usr/local/rvm/scripts/ rvm"'>> ~/.bashrc
Étape 3 - Configurer la base de données MySQL pour Redmine
Nous allons créer une base de données et un utilisateur de base de données pour l'installation de Redmine. Connectez-vous au shell MySQL avec l'utilisateur root et votre mot de passe :
mysql -u root -p
TAPEZ VOTRE MOT DE PASSE
Ensuite, créez une nouvelle base de données appelée "redmine" et un nouvel utilisateur avec le nom "redmine" avec le mot de passe "redmine" (utilisez un meilleur mot de passe sur votre installation, celui-ci n'est qu'un exemple), puis accordez les privilèges pour l'utilisateur 'redmine' à la base de données 'redmine'.
créer une base de données redmine ;
créer un utilisateur [email protected] identifié par 'redmine' ;
accorder tous les privilèges sur redmine.* à [email protected] identifié par 'redmine' ;
vider privilèges ;
q\
La base de données et l'utilisateur sont créés.
Étape 4 - Installer Phusion Passenger et Nginx
Phusion Passenger est un serveur Web et d'applications qui peut être intégré aux serveurs Web Apache et Nginx. Il prend en charge plusieurs langages :Ruby, Python et Nodejs. C'est facile à utiliser et rapide.
Dans cette partie, nous allons installer Phusion Passenger et l'intégrer à Nginx. Redmine fonctionnera sous le serveur Web Nginx. Installez Passenger avec la commande gem, puis installez le module Passenger-nginx.
gem install passager --no-ri --no-rdoc
passenger-install-nginx-module
La commande vous demandera la langue qui doit être prise en charge, sélectionnez Ruby et Python ici .
On vous posera des questions sur l'installation de Nginx, sélectionnez "Oui :téléchargez, compilez et installez Nginx pour moi. (recommandé) ".
Enfin, vous serez interrogé sur le répertoire d'installation de Nginx, utilisez la valeur par défaut '/opt/nginx/' et appuyez sur "Entrée ".
Étape 5 - Configurer Nginx
Allez dans le répertoire d'installation et éditez le fichier nginx.conf avec un éditeur, j'utiliserai l'éditeur vim ici.
cd /opt/nginx/conf/
vim nginx.conf
Dans la directive du serveur, remplacez le nom du serveur par le nom de domaine souhaité et ajoutez le répertoire Web racine :
serveur {
.......
écouter 80 ;
nom_serveur www.redmine.me ;
racine /var/www/redmine/public ;
/> passager_activé sur ;
client_max_body_size 10 m ; # Taille maximale des pièces jointes
........
}
Commentez les lignes ci-dessous :
#location / {
# root html ;
# index index.html index.htm;
#}
Enregistrez le fichier et quittez.
Ensuite, nous allons configurer Nginx pour systemd. Allez dans le répertoire systemd et créez un nouveau fichier de service 'nginx.service'.
cd /lib/systemd/system/
vim nginx.service
Collez le script Nginx pour systemd ci-dessous :
[Unit]
Description=Le serveur HTTP NGINX et le serveur proxy inverse
After=syslog.target network.target remote-fs.target nss-lookup.target
[ Service]
Type=forking
PIDFile=/opt/nginx/logs/nginx.pid
ExecStartPre=/opt/nginx/sbin/nginx -t
ExecStart=/opt/ nginx/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Installer]
WantedBy=multi-user.target
Enregistrez le fichier et quittez.
Rechargez les services systemd et essayez de démarrer Nginx avec la commande systemctl :
systemctl daemon-reload
systemctl start nginx
Si vous voulez vérifier Nginx, vérifiez le port 80 ouvert avec netstat :
netstat -plntu | grep nginx
tcp 0 0 0.0.0.0:80 0.0.0.0 :* ÉCOUTER 4871/nginx
Étape 6 - Installer Redmine
Créez un nouveau répertoire pour l'installation de Redmine, j'utiliserai le répertoire '/var/www/' ici.
mkdir -p /var/www/
Allez dans le répertoire '/var/www/' et téléchargez redmine avec la commande svn :
cd /var/www/
svn co https://svn.redmine.org/redmine/branches/3.2-stable redmine
Entrez dans le répertoire redmine et copiez le fichier de configuration et le fichier de configuration de la base de données :
cd redmine
cp config/configuration.yml.example config/configuration.yml
cp config/database.yml.example config/database.yml
Modifiez ensuite le fichier database.yml avec vim :
vim config/database.yml
Sur la ligne de production, renseignez les détails de la base de données, de l'utilisateur de la base de données et du mot de passe. Utilisez les détails de la base de données que vous avez créée au chapitre 3.
production :
adaptateur :mysql2
base de données :redmine
hôte :localhost
nom d'utilisateur :redmine
mot de passe :"redmine"
encodage :utf8Enregistrez le fichier et quittez l'éditeur.
Dans le répertoire redmine, créez un nouveau répertoire et changez le propriétaire en www-data :
mkdir -p tmp tmp/pdf public/plugin_assets
sudo chown -R www-data:www-data files log tmp public/plugin_assets
sudo chmod -R 775 files log tmp public/plugin_assetsInstallez ensuite bundler et les dépendances gem pour Redmine :
gem install bundler
installation groupée --sans test de développementGénérez maintenant le jeton secret puis générez la base de données :
bundle exec rake generate_secret_token
RAILS_ENV=production bundle exec rake db:migrate
RAILS_ENV=production bundle exec rake redmine:load_default_dataRedémarrez Nginx et visitez le domaine redmine avec un navigateur Web :
systemctl redémarrer nginxVisitez l'installation de redmine, dans mon cas :www.redmine.me
Connectez-vous à la page d'administration :www.redmine.me/login
L'utilisateur et le mot de passe par défaut sont 'admin'.
Créez un nouvel exemple de projet.
Exemple de page de projet.
L'installation de Redmine avec Nginx et MySQL s'est terminée avec succès.
Conclusion
Redmine est une application Web pour la gestion de projet et le suivi des problèmes. Redmine est une application multiplateforme, nous pouvons donc l'exécuter sur Windows, Linux ou Mac OS. Il prend en charge de nombreuses bases de données différentes telles que MySQL, PostgreSQL, Microsoft SQL Server et SQLite. Redmine est facile à installer et à configurer, nous pouvons utiliser Apache ou Nginx comme serveur Web. Redmine est très puissant et possède de nombreuses fonctionnalités telles que le support multilingue, la gestion de fichiers, le wiki, l'API REST, etc. Redmine est l'une des meilleures solutions OpenSource pour créer votre propre gestion de projet avec suivi des problèmes.