Dans ce didacticiel, nous allons vous montrer comment installer Redmine sur CentOS 8. 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 des 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 serveur CentOS 8.
Prérequis
- Un serveur exécutant l'un des systèmes d'exploitation suivants :CentOS 8.
- Il est recommandé d'utiliser une nouvelle installation du système d'exploitation pour éviter tout problème potentiel.
- Un
non-root sudo user
ou l'accès à l'root user
. Nous vous recommandons d'agir en tant qu'non-root sudo user
, cependant, car vous pouvez endommager votre système si vous ne faites pas attention lorsque vous agissez en tant que root.
Installer Redmine sur CentOS 8
Étape 1. Tout d'abord, commençons par nous assurer que votre système est à jour.
sudo dnf update
Étape 2. Créer un utilisateur système Redmine.
Nous allons créer un utilisateur qui sera le propriétaire de l'application, et nous lui donnerons un sudo
temporaire accès :
useradd -r -m -d /opt/redmine redmine
Étape 3. Installation du serveur HTTP Apache.
Pour installer le serveur HTTP Apache sur CentOS 8 :
dnf install httpd
Ensuite, démarrez les services Apache :
systemctl enable httpd --now
Ensuite, puisque nous allons utiliser Apache comme serveur HTTP, ajoutez Apache au groupe Redmine :
usermod -aG redmine apache
Étape 4. Installation du serveur MariaDB.
Pour installer MariaDB 10.4, vous devez installer son référentiel YUM.
cat << EOF > /etc/yum.repos.d/mariadb.repo [mariadb] name = MariaDB-10.4 baseurl=http://yum.mariadb.org/10.4/centos8-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1 EOF
Ensuite, installez la clé de signature du référentiel MariaDB YUM :
rpm --import https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
Installez MariaDB en utilisant la commande suivante :
sudo dnf update yum --disablerepo=AppStream install MariaDB-server MariaDB-client
Démarrez maintenant mysqld
service utilisant systemctl
commande comme indiqué ci-dessous :
sudo systemctl start mysqld sudo systemctl enable mariadb
Par défaut, MariaDB n'est pas renforcée. Vous pouvez sécuriser MariaDB à 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 MariaDB 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. Téléchargez et installez Redmine sur CentOS.
- Installer les dépendances requises
Tout d'abord, installez EPEL et activez les référentiels PowerTools :
dnf install epel-release dnf config-manager --set-enabled PowerTools
Ensuite, procédez à l'installation des dépendances :
dnf install ruby-devel rpm-build libxml2-devel make automake libtool ImageMagick ImageMagick-devel mariadb-devel gcc httpd-devel libcurl-devel gcc-c++
Redmine nécessite également un interpréteur Ruby qui peut être installé en exécutant la commande :
dnf install ruby
Exécutez maintenant la commande suivante comme indiqué ci-dessous pour vérifier la version de Ruby :
ruby -v
- Installer Redmine sur CentOS
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 4.0 :
wget http://www.redmine.org/releases/redmine-4.0.5.tar.gz -P /tmp
Extraire l'archive Redmine dans le répertoire personnel de l'utilisateur Redmine :
sudo -u redmine tar xzf /tmp/redmine-4.0.5.tar.gz -C /opt/redmine/ --strip-components=1
Ensuite, modifiez le répertoire de travail actuel et les exemples de fichiers de configuration :
su - redmine
Renommer l'exemple de configuration Redmine.
cp config/configuration.yml{.example,}
Renommer l'exemple de fichier de configuration CGI dispatch sous le dossier public comme indiqué ci-dessous ;
cp public/dispatch.fcgi{.example,}
Renommer l'exemple en fichier de configuration de la base de données.
cp config/database.yml{.example,}
Ensuite, ouvrez le fichier de configuration de la base de données pour le modifier et le configurer :
nano config/database.yml
... production: adapter: mysql2 database: redmin host: localhost username: redmine password: "Your_PassWd" encoding: utf8 ...
Installer les dépendances Ruby :
su - redmine
Ensuite, installez Bundler pour gérer les dépendances de gem :
gem install bundler
Une fois l'installation du bundler terminée, vous pouvez maintenant installer les dépendances gems requises :
bundle install --without development test --path vendor/bundle
Générer un jeton de session secret :
bundle exec rake generate_secret_token
Créer des objets de schéma de base de données :
RAILS_ENV=production bundle exec rake db:migrate
Une fois la migration de la base de données terminée, insérez les données de configuration par défaut dans la base de données en exécutant :
RAILS_ENV=production REDMINE_LANG=en bundle exec rake redmine:load_default_data
Configurer les autorisations du système de fichiers :
for i in tmp tmp/pdf public/plugin_assets; do [ -d $i ] || mkdir -p $i; done chown -R redmine:redmine files log tmp public/plugin_assets chmod -R 755 /opt/redmine/
Étape 6. Configurez le pare-feu pour Redmine.
Ouvrez le port 3000/TCP sur le pare-feu. Exécutez les commandes ci-dessous en tant qu'utilisateur privilégié :
firewall-cmd --add-port=3000/tcp --permanent firewall-cmd --reload
Étape 7. Tester l'installation de Redmine
Vous pouvez tester Redmine avec WEBrick en exécutant la commande ci-dessous :
bundle exec rails server webrick -e production
Ensuite, vous pouvez maintenant accéder à Redmine via le navigateur en utilisant l'adresse, http://Your-Server-IP:3000/
. Cliquez sur se connecter et utilisez les identifiants, Utilisateur :admin et Mot de passe :admin pour vous connecter.
Étape 8. Configurez Apache pour Redmine.
Basculez vers l'utilisateur Redmine créé ci-dessus pour installer le module Phusion Passenger Apache :
su - redmine gem install passenger --no-rdoc --no-ri
Ensuite, installez le module Passenger Apache. Remplacez la version de Passenger en conséquence :
passenger-install-apache2-module
Une fois la compilation du module terminée, on vous explique comment configurer le module sur Apache :
... Please edit your Apache configuration file, and add these lines: LoadModule passenger_module /opt/redmine/.gem/ruby/gems/passenger-6.0.4/buildout/apache2/mod_passenger.so PassengerRoot /opt/redmine/.gem/ruby/gems/passenger-6.0.4 PassengerDefaultRuby /usr/bin/ruby ...
Avant de pouvoir appuyer sur Entrée pour terminer l'installation et la configuration du module, ouvrez une nouvelle session de connexion en tant qu'utilisateur privilégié et modifiez le fichier de configuration Apache :
echo "LoadModule passenger_module /opt/redmine/.gem/ruby/gems/passenger-6.0.4/buildout/apache2/mod_passenger.so" \ > /etc/httpd/conf.modules.d/00-passenger.conf
Ensuite, créez une configuration d'hôte virtuel Apache pour Redmine avec le contenu suivant :
Listen 3000
<IfModule mod_passenger.c>
PassengerRoot /opt/redmine/.gem/ruby/gems/passenger-6.0.4
PassengerDefaultRuby /usr/bin/ruby
</IfModule>
<VirtualHost *:3000>
ServerName redmine.kifarunix-demo.com
DocumentRoot "/opt/redmine/public"
CustomLog logs/redmine_access.log combined
ErrorLog logs/redmine_error_log
LogLevel warn
<Directory "/opt/redmine/public">
Options Indexes ExecCGI FollowSymLinks
Require all granted
AllowOverride all
</Directory>
</VirtualHost>
Vérifiez la syntaxe de configuration d'Apache :
httpd -t Syntax OK
Une fois l'installation et la configuration du module Apache Passenger terminées, redémarrez Apache :
systemctl restart httpd
Étape 9. Accéder à Redmine depuis le navigateur.
Vous devriez maintenant pouvoir accéder à l'interface Web de Redmine :
http://Your-server-IP-or-Hostname:3000
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 8. Pour obtenir de l'aide supplémentaire ou des informations utiles, nous vous recommandons de consulter le Site Web de Redmine.