GNU/Linux >> Tutoriels Linux >  >> Cent OS

Installer et configurer Redmine sur CentOS 7

Redmine est un outil Web open source gratuit pour la gestion de projet et le suivi des problèmes. Construit sur le cadre Ruby on Rails, il offre une solution multiplateforme et multibase de données qui prend en charge plusieurs projets, wikis, forums, calendriers, notifications par e-mail et bien plus encore.

Voici un guide détaillé sur l'installation et la configuration de Redmine sur le serveur CentOS 7.

Prérequis

Tout d'abord, vous avez besoin d'un nom de domaine pointé vers l'adresse IP de votre serveur public. Pour ce didacticiel, nous ferons référence à example.com. De plus, vous devrez être connecté en tant qu'utilisateur avec des privilèges sudo.

En dehors de cela, vous aurez également besoin d'un backend de base de données. Dans notre cas, nous utiliserons MariaDB. Cependant, vous pouvez également utiliser Microsoft SQL Server, SQLite 3 et PostgreSQL, car Redmine les prend tous en charge.

Enfin, vous aurez besoin d'un serveur d'application Ruby pour lequel nous utiliserons Passenger avec Nginx. Si aucun de ces éléments n'est installé sur votre système, vous n'avez pas à vous inquiéter. Nous vous montrerons également comment les installer et les configurer.

Préparer votre système avant d'installer Redmine

Comme nous en avons discuté, il y a plusieurs choses dont vous avez besoin sur votre système CentOS avant de pouvoir installer et exécuter Redmine. Au cas où vous ne les auriez pas installés, voici une procédure pas à pas vous montrant comment configurer les choses.

Remarque :Il va sans dire que si vous avez déjà installé un backend de base de données ou un serveur d'application Ruby, vous pouvez ignorer ces étapes et passer à la suivante.

Étape 1 :Installer les packages nécessaires

Avant d'installer Redmine, vous devez préparer votre système en installant les packages Redmine et Ruby nécessaires à partir de la source.

Pour cela, tapez les commandes suivantes dans votre terminal :

$ sudo yum install curl gpg gcc gcc-c++ make patch autoconf automake bison libffi-devel libtool 
$ sudo yum install readline-devel sqlite-devel zlib-devel openssl-develh readline glibc-headers glibc-devel
$ sudo yum install mariadb-devel zlib libyaml-devel bzip2 iconv-devel ImageMagick ImageMagick-devel

Une fois cela fait, il est temps de créer une base de données MySQL.

Étape 2 :Installez MariaDB sur CentOS 7

Vous êtes libre d'utiliser n'importe quel backend de base de données que vous aimez. Cependant, pour ce tutoriel, puisque nous allons utiliser MariaDB/MySQL, voici un rapide tutoriel vous montrant comment l'installer sur votre système.

Puisque MariaDB version 5.5 est fournie avec le référentiel CentOS, nous l'installerons uniquement pour des raisons de commodité. Ce n'est pas la dernière version, mais elle est exceptionnellement stable et vous ne devriez pas rencontrer de problèmes.

Tapez la commande suivante dans votre terminal pour installer les packages MariaDB :

$ sudo yum install mariadb-server

Une fois l'installation terminée, saisissez la commande suivante pour lui permettre de démarrer lors du démarrage du système.

$ sudo systemctl start mariadb
$ sudo systemctl enable mariadb

Ensuite, vérifiez si l'installation a réussi ou non en saisissant la commande suivante :

$ sudo systemctl status mariadb

La sortie doit vous indiquer que le service est actif et en cours d'exécution. Une fois cela fait, exécutez le script suivant pour effectuer plusieurs tâches liées à la sécurité afin de vous assurer que tout fonctionne correctement et comme prévu.

$ sudo mysql_secure_installation

Cela va faire apparaître les invites suivantes :

Do you want to set up the root user password?
Do you want to remove anonymous user accounts?
Do you want to restrict root user access to the local machine?
Do you want to remove the test database?

Répondez par Y (oui) à toutes ces questions.

Et voilà, vous avez installé avec succès MariaDB sur votre système CentOS. Il est maintenant temps de passer à l'étape suivante.

Étape 3 :Créer une base de données MySQL

Avec MariaDB installé sur votre système CentOS, suivez ces étapes pour créer une base de données MySQL. Tout d'abord, vous devrez vous connecter à votre shell MySQL. Pour cela, saisissez la commande suivante dans le terminal :

$ sudo mysql

Ensuite, vous devrez créer une nouvelle base de données. Pour ce faire, saisissez la commande suivante depuis votre shell MySQL :

mysql> CREATE DATABASE redmine CHARACTER SET utf8;

Une fois cela fait, vous devrez créer un compte utilisateur MySQL et lui donner accès à la base de données nouvellement créée. Cela se fait à l'aide de la commande suivante :

mysql> GRANT ALL ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'EnterPasswordHere';

Remplacez EnterPasswordHere par un mot de passe fort de votre choix.

Vous avez créé avec succès une base de données MySQL. Quittez maintenant le shell à l'aide de la commande suivante et passez à l'étape suivante :

mysql> EXIT;

Étape 4 :Installer Passenger et Nginx

Passenger est un serveur d'applications Web conçu pour Ruby, Node.js et Python. Il est ultra-rapide, léger et peut être intégré à Apache et Nginx. Pour ce tutoriel, nous allons installer le module Passenger pour Nginx.

Pour ce faire, nous devrons d'abord installer certains packages nécessaires, y compris le référentiel EPEL. Pour cela, saisissez la commande suivante dans votre terminal :

$ sudo yum install epel-release yum-utils pygpgme
$ sudo yum-config-manager --enable epel

Ensuite, vous devrez activer le référentiel Phusionpassenger. Cela peut être fait en utilisant cette commande :

$ sudo yum-config-manager --add-repo https://oss-binaries.phusionpassenger.com/yum/definitions/el-passenger.repo

Enfin, mettez à jour la liste des packages et installez à la fois Nginx et Passenger à l'aide de cette commande :

$ sudo yum install nginx passenger passenger-devel

Étape 5 :Créer un nouvel utilisateur système

Nous avons presque fini de tout configurer pour installer Redmine. La prochaine chose que nous devons faire est de créer un nouvel utilisateur système et un groupe qui exécutera l'instance Redmine. Nous créons d'abord un nouvel utilisateur en entrant la commande suivante dans le terminal :

$ sudo useradd -m -U -r -d /opt/redmine redmine

Par souci de simplicité, nous avons conservé le nom d'utilisateur redmine; cependant, vous êtes libre d'utiliser le nom d'utilisateur de votre choix.

Ensuite, ajoutez l'utilisateur ngnix au nouveau groupe d'utilisateurs à l'aide de cette commande :

$ sudo usermod -a -G redmine nginx

Et enfin, modifiez les autorisations du répertoire /opt/redmine afin qu'il soit accessible par Nginx. Pour cela, saisissez cette commande :

$ sudo chmod 750 /opt/redmine

Étape 6 :Installer Ruby

Et maintenant, pour la dernière étape pour tout préparer, nous devrons installer Ruby sur notre système CentOS.

Maintenant, la partie délicate est que la version Ruby fournie avec le référentiel CentOS est obsolète et n'est pas prise en charge par Redmine. C'est pourquoi nous devrons l'installer en utilisant RVM.

Tout d'abord, passez à l'utilisateur Redmine en tapant la commande suivante :

$ sudo su - redmine

Vous devrez importer la clé GPG à l'aide de cette commande :

$ gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

Une fois cela fait, installez RVM avec cette commande :

$ curl -sSL https://get.rvm.io | bash -s stable

Maintenant, pour utiliser RVM, vous devrez sourcer le fichier RVM en utilisant cette commande :

$ source /opt/redmine/.rvm/scripts/rvm

Enfin, il est temps d'installer Ruby sur notre système. Pour cela, saisissez la commande suivante dans votre terminal.

$ rvm install 2.7
$ rvm --default use 2.7

Remarque : Ici, 2.7 fait référence à la version 2.7 de Ruby, qui est la dernière version de Ruby au moment de la rédaction. S'il existe une version mise à jour de Ruby lorsque vous lisez ceci, téléchargez-la à la place. Vous pouvez toujours utiliser la version 2.7 tant que Redmine la prend en charge.

Et c'est tout! Vous avez configuré avec succès votre système CentOS et il est maintenant prêt à installer Redmine.

Installer Redmine sur CentOS 7

Lors de l'installation de Redmine, vous devez toujours consulter la page de téléchargement de Redmine pour voir la dernière version et la télécharger. Pour les besoins de ce didacticiel, nous allons installer la version 4.1.1 de Redmine puisqu'il s'agit de la version stable actuelle au moment de la rédaction.

Maintenant que cela est réglé, voici un guide étape par étape sur l'installation de Redmine 4.1.1 sur CentOS 7.

Étape 1 :Téléchargez Redmine

Avant de commencer, assurez-vous que vous exécutez toutes les commandes en vous connectant en tant qu'utilisateur Redmine.

Une fois que vous avez fait cela, téléchargez l'archive Redmine sur votre système. Vous pouvez le faire en utilisant la commande curl suivante :

$ curl -L http://www.redmine.org/releases/redmine-4.1.1.tar.gz -o redmine.tar.gz

Après avoir téléchargé l'archive, extrayez-la à l'aide de la commande suivante :

$ tar -xvf redmine.tar.gz

Étape 2 :Configurer la base de données Redmine

Ensuite, vous devrez configurer la base de données Redmine. Commencez par copier le fichier de configuration de la base de données d'exemple Redmine à l'aide de la commande suivante :

$ cp /opt/redmine/redmine-4.1.1/config/database.yml.example /opt/redmine/redmine-4.1.1/config/database.yml

Ensuite, ouvrez le fichier à l'aide de l'éditeur de texte de votre choix. Nous utiliserons l'éditeur nano.

nano /opt/redmine/redmine-4.1.1/config/database.yml

Maintenant, recherchez dans la section de production et entrez les informations de la base de données MySQL précédemment créées, y compris le nom d'utilisateur et le mot de passe, comme indiqué ci-dessous.

production:
adapter: mysql2
database: redmine
host: localhost
username: redmine
password: "EnterPasswordHere"
encoding: utf8

Remplacez EnterPasswordHere par un mot de passe fort de votre choix.

Une fois terminé, enregistrez et quittez le fichier pour passer à l'étape suivante.

Étape 3 :Installer les dépendances Ruby

Ensuite, vous devrez installer toutes les dépendances ruby ​​et le bundler.

Pour ce faire, rendez-vous dans le répertoire redmine-4.1.1, ouvrez le terminal et entrez les commandes suivantes :

$ cd ~/redmine-4.1.1
$ gem install bundler --no-rdoc --no-ri
$ bundle install --without development test postgresql sqlite

Étape 4 :Génération de clés et migration de la base de données

Entrez les commandes suivantes dans votre terminal pour générer des clés et migrer la base de données :

$ bundle exec rake generate_secret_token
$ RAILS_ENV=production bundle exec rake db:migrate

Étape 5 :Configurer Nginx

Maintenant, avant de pouvoir accéder à Redmine, vous devrez configurer Nginx. Pour ce faire, revenez d'abord à votre utilisateur sudo en saisissant la commande suivante :

$ exit

Maintenant, ouvrez l'éditeur de texte et créez le fichier de bloc du serveur Nginx. Pour cela, saisissez la commande suivante :

$ sudo nano /etc/nginx/conf.d/example.com.conf

Ensuite, copiez et collez le contenu suivant dans le fichier :

Remarque :n'oubliez pas de remplacer example.com par votre domaine Redmine.

passenger_root /usr/share/ruby/vendor_ruby/phusion_passenger/locations.ini;
passenger_ruby /opt/redmine/.rvm/gems/default/wrappers/ruby;
passenger_instance_registry_dir /var/run/passenger-instreg;

server {
listen 80;
server_name example.com www.example.com;

root /opt/redmine/redmine-4.1.1/public;

# log files
access_log /var/log/nginx/example.com.access.log;
error_log /var/log/nginx/example.com.error.log;

passenger_enabled on;
passenger_min_instances 1;

client_max_body_size 10m;
}

Une fois cela fait, exécutez un test pour vous assurer qu'il n'y a pas d'erreur système en saisissant la commande suivante :

$ sudo nginx -t

Une sortie propre sans erreur devrait ressembler à ceci :

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Une fois que vous obtenez le feu vert, vous pouvez redémarrer le serveur Nginx en saisissant cette commande :

sudo systemctl restart nginx

Étape 6 :Chiffrer Nginx avec SSL

Vous devrez configurer Nginx avec une certification SSL. Si votre domaine n'est pas déjà protégé par un certificat SSL de confiance, vous pouvez en générer un gratuitement à l'aide de Let's Encrypt.

Une fois que vous avez le certificat en main, vous devrez à nouveau éditer le fichier de configuration Nginx. Pour ce faire, vous devez d'abord l'ouvrir dans votre éditeur de texte à l'aide de la commande suivante :

$ sudo nano /etc/nginx/conf.d/example.com.conf

Modifiez maintenant le fichier, comme indiqué ci-dessous :

passenger_root /usr/share/ruby/vendor_ruby/phusion_passenger/locations.ini;
passenger_ruby /opt/redmine/.rvm/gems/default/wrappers/ruby;
passenger_instance_registry_dir /var/run/passenger-instreg;

# Redirect HTTP -> HTTPS
server {
listen 80;
server_name www.example.com example.com;

include snippets/letsencrypt.conf;
return 301 https://example.com$request_uri;
}

# Redirect WWW -> NON WWW
server {
listen 443 ssl http2;
server_name www.example.com;

ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;
include snippets/ssl.conf;

return 301 https://example.com$request_uri;
}

server {
listen 443 ssl http2;
server_name example.com;

root /opt/redmine/redmine-4.1.1/public;

# SSL parameters
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;
include snippets/ssl.conf;
include snippets/letsencrypt.conf;

# log files
access_log /var/log/nginx/example.com.access.log;
error_log /var/log/nginx/example.com.error.log;

passenger_enabled on;
passenger_min_instances 1;
client_max_body_size 10m;
}

Remarque :n'oubliez pas de remplacer example.com par votre domaine Redmine.

Et c'est tout! Vous êtes maintenant prêt à accéder à Redmine.

Accéder à Redmine

Vous avez maintenant installé et configuré avec succès Redmine sur CentOS. Il est enfin temps d'y accéder et de voir si tout fonctionne correctement.

Pour accéder à Redmine, vous devez d'abord ouvrir votre navigateur et saisir votre domaine. Si l'installation a réussi, vous devriez voir l'écran suivant vous demandant votre nom d'utilisateur et votre mot de passe.

Par défaut, les identifiants de connexion sont les suivants :

Username: admin
Password: admin

Après vous être connecté pour la première fois, le système vous demandera de changer votre mot de passe pour un mot de passe plus sûr.

Après avoir changé votre mot de passe, vous serez redirigé vers la page principale de votre compte utilisateur à partir de laquelle vous pourrez commencer à utiliser Redmine.


Cent OS
  1. Comment installer et configurer Nginx sur CentOS 7

  2. Comment installer et configurer Redis sur CentOS 7

  3. Comment installer et configurer GitLab sur CentOS 7

  4. Comment installer et configurer Redmine sur CentOS 7

  5. Comment installer et configurer Redis sur CentOS 8

Installer et configurer phpLDAPAdmin sur CentOS 7 / Ubuntu 16.04

Comment installer et configurer ownCloud sur CentOS 7

Installer et configurer Check_MK Server sur CentOS 7

Comment installer et configurer Samba sur CentOS 8

Comment installer et configurer Fail2ban sur CentOS 8

Comment installer et configurer MariaDB dans CentOS / RHEL 7