Plan du site  
pixel
pixel

Articles - Étudiants SUPINFO

Installer et configurer Redmine (Debian 9)

Par Baptiste NOWICKI Publié le 22/12/2017 à 20:19:00 Noter cet article:
(0 votes)
Avis favorable du comité de lecture

Introduction

Redmine est une application web de gestion de projet écrit en Ruby basée sur le framework Ruby on Rails.

Cet outil est aujourd'hui très largement utilisé dans le monde de l'entreprise afin de gérer tout type de demande sur les différents projets.

Il permet notamment :

Gérer les rôles des utilisateurs, gérer plusieurs projets simultanément, gérer nos diagrammes de gant, notre wiki ... et bien plus encore !

Voici un petit aperçu du suivi des demandes

Installation

Pré-requis

Serveur web (nous utiliserons apache2)

sudo apt-get install libapache2-mod-passenger apache2 apache2-dev

Serveur MySQL

sudo apt-get install mysql-server mysql-client

Dépendances

sudo apt-get install default-libmysqlclient-dev gcc build-essential zlib1g zlib1g-dev zlibc ruby-zip libssl-dev libyaml-dev libcurl4-openssl-dev php ruby gem libapr1-dev libxslt1-dev checkinstall libxml2-dev ruby-dev vim libmagickwand-dev imagemagick rails

Téléchargement

sudo wget http://www.redmine.org/releases/redmine-3.4.3.tar.gz

A adapter en fonction de la dernière version disponible sur le site officiel : https://www.redmine.org/projects/redmine/wiki/Download

De-zipper l'archive

sudo tar xzf redmine-3.4.3.tar.gz

La placer dans notre répertoire apache

sudo mv redmine-3.4.3 /var/www/html

Dans le suite de ce tutoriel, nous utiliserons le chemin redmine-3.4.3 dans toutes nos commandes étant donné qu'a date, il s'agit de la dernière version, il vous faudra adapter celles-ci si vous installez une version différente.

Configuration Redmine

Afin de contourner l'erreur "exceed limit" lors de la création de notre base de donnée, nous devons mettre en place un petit fix (merci à Stanislav Tilsh pour son partage)

sudo vim var/www/html/redmine-3.4.3/config/initializers/ar_innodb_row_format.rb

Collez-y ceci

ActiveSupport.on_load :active_record do
    module ActiveRecord::ConnectionAdapters
        class AbstractMysqlAdapter
            def create_table_with_innodb_row_format(table_name, options = {})
                table_options = options.reverse_merge(:options => 'ENGINE=InnoDB ROW_FORMAT=DYNAMIC')
                create_table_without_innodb_row_format(table_name, table_options) do |td|
                    yield td if block_given?
                end
            end
            alias_method_chain :create_table, :innodb_row_format
        end
    end
end

Création de la base de données

sudo mysql -u mon_user -p
CREATE DATABASE redmine CHARACTER SET utf8mb4;

CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'my_password';

GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost';

exit

Nous venons de créer une nouvelle table : redmine, un utilisateur redmine, enfin nous donnons les droits à ce nouvel utilisateur sur la table.

Configuration de la base de données

cd /var/www/html/redmine-3.4.3/config
sudo cp database.yml.example database.yml
sudo vim database.yml

Modifiez le fichier comme suit (attention à bien modifier le champ password)

production:

  adapter: mysql2

  database: redmine

  host: localhost

  username: redmine

  password: my_pasword

  encoding: utf8

Installer bundler

sudo gem install bundler

Installation des gem necessaires

bundle install --without development test

Générer le token secret

bundle exec rake generate_secret_token

Déployer et installer la base de données

RAILS_ENV=production bundle exec rake db:migrate

RAILS_ENV=production bundle exec rake redmine:load_default_data

Afin de tester notre configuration, exècutez la commande

bundle exec ruby bin/rails server -b IP webrick -e production

Si tout s'est bien passé, Redmine est désormais accessible via : http://Mon_IP:3000

Configuration d'apache

Renommer le répertoire

cd /var/www/html

sudo mv  redmine-3.4.3 redmine

Mettre à jour les droits

cd /var/www/html/redmine

sudo chown -R www-data files log tmp public/plugin_assets

sudo chmod -R 755 files log tmp public/plugin_assets

Création du virtualhost apache

sudo vim /etc/apache2/sites-available/redmine.conf

Collez-y ceci

<VirtualHost *:3000>

        RailsEnv production

        DocumentRoot /var/www/html/redmine/public

        <Directory "/var/www/html/redmine//public">

                Allow from all

                Require all granted

        </Directory>

</VirtualHost>

Activer notre nouvelle configuration

sudo a2ensite redmine

Ajouter l'écoute du port 3000 à la configuration d'apache

sudo vim /etc/apache2/ports.conf

Ajouter cette ligne en dessous de Listen 80

Listen 3000

Enfin, nous devons redémarrer apache afin que nos configurations soient bien pris en compte

sudo /etc/init.d/apache2 restart

Redmine est désormais accéssible via : http://Mon_IP:3000 !

A propos de SUPINFO | Contacts & adresses | Enseigner à SUPINFO | Presse | Conditions d'utilisation & Copyright | Respect de la vie privée | Investir
Logo de la société Cisco, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société IBM, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Sun-Oracle, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Apple, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Sybase, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Novell, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Intel, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Accenture, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société SAP, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Prometric, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Toeic, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo du IT Academy Program par Microsoft, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management

SUPINFO International University
Ecole d'Informatique - IT School
École Supérieure d'Informatique de Paris, leader en France
La Grande Ecole de l'informatique, du numérique et du management
Fondée en 1965, reconnue par l'État. Titre Bac+5 certifié au niveau I.
SUPINFO International University is globally operated by EDUCINVEST Belgium - Avenue Louise, 534 - 1050 Brussels