Dans ce tutoriel, nous allons vous montrer comment installer Redmine sur votre serveur CentOS 7. Pour ceux d'entre vous qui ne le savaient pas, Redmine est une application Web de gestion de projet qui permet aux utilisateurs de gérer projets de manière flexible tout en offrant des outils de surveillance robustes et une vaste bibliothèque de plug-ins. Cette solution gratuite et open source remplace les outils de gestion des tâches payants et prend en charge les wikis, les forums, les calendriers et les programmes de visualisation d'informations.
Cet article suppose que vous avez au moins des connaissances de base sur Linux, que vous savez utiliser le shell et, plus important encore, que vous hébergez votre site sur votre propre VPS. L'installation est assez simple et suppose que vous s'exécutent dans le compte root, sinon vous devrez peut-être ajouter 'sudo
‘ aux commandes pour obtenir les privilèges root. Je vais vous montrer l'installation étape par étape de l'application Web de gestion de projet Redmine sur un CentOS 7.
Installer Redmine sur CentOS 7
Étape 1. Tout d'abord, commençons par nous assurer que votre système est à jour.
yum clean all yum -y install epel-release yum -y update
Étape 2. Installation de toutes les dépendances.
Installez toutes les dépendances requises par Redmine :
yum install zlib-devel curl-devel openssl-devel httpd-devel apr-devel apr-util-devel mysql-devel ftp wget ImageMagick-devel gcc-c++ patch readline readline-devel zlib libyaml-devel libffi-devel make bzip2 autoconf automake libtool bison iconv-devel subversion
Étape 3. Installation de Ruby et RVM.
Redmine nécessite Ruby. Donc, d'abord, vous voudrez installer Ruby Version Manager qui permet de gérer plusieurs environnements ruby :
gpg2 --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 curl -L https://get.rvm.io | bash -s stable --ruby=2.2.5
Nous devons maintenant ajouter le fichier .bashrc afin qu'il puisse être automatiquement rechargé et pour l'ajouter au fichier .bashrc, exécutez ceci :
echo '[[ -s "/usr/local/rvm/scripts/rvm" ]] && source "/usr/local/rvm/scripts/rvm"' >> ~/.bashrc
Rechargez le fichier .bashrc à l'aide de cette commande :
source ~/.bashrc
Exécutez maintenant la commande suivante comme indiqué ci-dessous pour vérifier la version de Ruby et RVM :
ruby -v rvm -v
Étape 4. Installation du serveur MySQL.
MySQL doit être configuré pour que Redmine puisse stocker des données, nous allons donc installer le serveur MySQL :
rpm -Uvh https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm yum repolist yum install mysql-server
Démarrez maintenant mysqld
service utilisant systemctl
commande comme indiqué ci-dessous :
systemctl start mysqld
Par défaut, MySQL n'est pas renforcé. Vous pouvez sécuriser MySQL à l'aide de mysql_secure_installation
scénario. Vous devez lire attentivement et ci-dessous chaque étape qui définira un mot de passe root, supprimera les utilisateurs anonymes, interdira la connexion root à distance et supprimera la base de données de test et l'accès à MySQL sécurisé.
mysql_secure_installation
Configurez-le comme ceci :
- Set root password? [Y/n] y - Remove anonymous users? [Y/n] y - Disallow root login remotely? [Y/n] y - Remove test database and access to it? [Y/n] y - Reload privilege tables now? [Y/n] y
Ensuite, nous devrons nous connecter à la console MySQL et créer une base de données pour Redmine. Exécutez la commande suivante :
mysql -u root -p
Cela vous demandera un mot de passe, alors entrez votre mot de passe root MySQL et appuyez sur Entrée. Une fois que vous êtes connecté à votre serveur de base de données, vous devez créer une base de données pour Installation de Redmine :
CREATE DATABASE redmin GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'PASSWORD'; FLUSH PRIVILEGES; \q
Étape 5. Installation de Passenger et Nginx.
Passenger est un serveur d'application qui exécute votre application Web puis communique avec le serveur Web. Nous allons l'installer et l'intégrer à Nginx :
gem install passenger --no-ri --no-rdoc passenger-install-nginx-module
Il vous sera demandé des informations, puis Nginx sera installé. Le répertoire d'installation par défaut est /opt/nginx
. Bien sûr, vous pouvez le changer. Dans celui-ci, modifiez nginx.conf
.
Sur la ligne 23, collez le contenu suivant :
include vhost/*.conf;
Enregistrez et fermez le fichier. Ensuite, créez un répertoire vhost pour les fichiers de configuration de l'hôte virtuel :
mkdir -p /opt/nginx/conf/vhost
Dans ce répertoire, créez un fichier Redmine.conf. Collez ce qui suit dans ce fichier :
server { listen 80; server_name yourdomain.com; root /var/www/html/redmine/public; passenger_enabled on; client_max_body_size 10m; # Max attachemnt size # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }
Redémarrez le serveur Web pour que les modifications prennent effet :
systemctl restart nginx systemctl enable nginx
Étape 6. Installation de Redmine.
Tout d'abord, téléchargez la dernière version de Redmine, au moment de la rédaction de cet article c'est la version 3.4 :
cd /var/www/ svn co http://svn.redmine.org/redmine/branches/3.4-stable redmine
Ensuite, modifiez le répertoire de travail actuel et les exemples de fichiers de configuration :
cd redmine cp config/configuration.yml.example config/configuration.yml cp config/database.yml.example config/database.yml
Apportez les modifications suivantes au fichier database.yml :
nano config/database.yml
Ajoutez le contenu suivant :
production: adapter: mysql2 database: redmine host: localhost username: redmine password: PASSWORD encoding: utf8
Exécutez les commandes suivantes pour changer le propriétaire en utilisateur et groupe personne :
mkdir -p tmp tmp/pdf public/plugin_assetssud chown -R nobody:nobody files log tmp public/plugin_assetssudo chmod -R 775 files log tmp public/plugin_assets
Installez les dépendances bundler et gem pour Redmine :
gem install bundlerbundle install --without development test
Générez le jeton secret à l'aide de la commande suivante :
bundle exec rake generate_secret_token RAILS_ENV=production bundle exec rake db:migrate RAILS_ENV=production bundle exec rake redmine:load_default_data
Enfin, redémarrez le serveur Web Nginx pour que les modifications prennent effet :
systemctl restart nginx
Étape 7. Accéder à Redmine.
Redmine sera disponible sur le port HTTP 80 par défaut. Ouvrez votre navigateur préféré et accédez à http://mydomain.com
et effectuez les étapes requises pour terminer l'installation à l'aide des informations d'identification par défaut (admin/admin). Si vous utilisez un pare-feu, veuillez ouvrir le port 80 pour permettre l'accès au panneau de contrôle.
Félicitations ! Vous avez installé Redmine avec succès. Merci d'avoir utilisé ce didacticiel pour installer l'application Web de gestion de projet Redmine sur les systèmes CentOS 7. Pour obtenir de l'aide supplémentaire ou des informations utiles, nous vous recommandons de consulter le Site Web de Redmine.