Préambule
Redmine peut être installé sur la plupart des systèmes Unix, Linux, macOS, Windows
La base de données qu'utilise Redmine peut être MySQL (MariaDB), PostgreSQL, Microsoft SQL, SQLite
Debian 10 sera choisit pour cette installation avec une base de données MySQL (MariaDB)
Installation Apache et paquets nécessaires
Installation dépendances nécessaires :
sudo apt install apt-transport-https ca-certificates dirmngr gnupg2Installation Apache, MariaDB, Passenger et les autres paquets nécessaires :
sudo apt install apache2 apache2-dev libapache2-mod-passenger mariadb-server mariadb-client build-essential ruby-dev libxslt1-dev libmariadb-dev libxml2-dev zlib1g-dev imagemagick libmagickwand-dev curlUne fois tous ces paquets et dépendances installés, créer la base de données pour Redmine
Création de la base de données
Sécurisation de la base de données :
sudo mysql_secure_installation
Suivre les recommandations de sécurisation
Se connecter en root puis à MariaDB :
su - mysqlCréation d'une base de données "redminedb" et d'un utilisateur mysql "redmineuser" :
CREATE DATABASE redminedb CHARACTER SET utf8mb4; GRANT ALL PRIVILEGES ON redminedb.* TO 'redmineuser'@'localhost' IDENTIFIED BY 'my_secure_password';Flush les privilèges et quitter MariaDB :
FLUSH PRIVILEGES; EXIT;Se déconnecter de l'utilisateur root :
exit
Installation et configuration Redmine
Création d'un utilisateur linux "redmine" pour Redmine :
sudo useradd -r -m -d /opt/redmine -s /usr/bin/bash redmineAjout de l'utilisateur redmine au groupe "www-data" :
sudo usermod -aG redmine www-dataSe connecter avec l'utilisateur redmine et télécharger la dernière version de Redmine :
su - redmine wget https://www.redmine.org/releases/redmine-4.2.3.tar.gzExtraire l'archive téléchargée :
tar -xvzf redmine-4.2.3.tar.gz -C /opt/redmine/ --strip-components=1Copie des fichiers de configurations exemples :
cp /opt/redmine/config/configuration.yml{.example,} cp /opt/redmine/public/dispatch.fcgi{.example,} cp /opt/redmine/config/database.yml{.example,}Editer le fichier database.yml et y définir les paramètres de la base de données :
vi /opt/redmine/config/database.ymlFaire les modifications suivantes :
production: adapter: mysql2 database: redminedb host: localhost username: redmineuser password: "my_secure_password"Sauvegarder le fichier et quitter l'utilisateur redmine :
exitSe rendre dans le répertoire "/opt/redmine" et installer "Bundler" :
cd /opt/redmine sudo gem install bundlerSe connecter avec l'utilisateur redmine et installer les dépendances gems nécessaires :
su - redmine bundle install --without development test --path vendor/bundleGénérer un token secret :
bundle exec rake generate_secret_tokenCréer une structure de base de données Rails et insérer les données de configuration par défaut dans la bdd :
RAILS_ENV=production bundle exec rake db:migrate RAILS_ENV=production REDMINE_LANG=en bundle exec rake redmine:load_default_dataCréer les répertoires et fichiers nécessaires :
for i in tmp tmp/pdf public/plugin_assets; do [ -d $i ] || mkdir -p $i; doneDéfinir les permission sur le dossier /opt/redmine :
chown -R redmine:redmine files log tmp public/plugin_assets chmod -R 755 /opt/redmineSe déconnecter de l'utilisateur Redmine :
exit
Configuration Apache
Désactiver le site par défaut :
sudo a2dissite 000-default.confCréer un virtual host pour Redmine :
sudo vi /etc/apache2/sites-available/redmine.confAjout des lignes suivantes :
< VirtualHost *:80> ServerName redmine.example.com RailsEnv production DocumentRoot /opt/redmine/public < Directory "/opt/redmine/public"> Allow from all Require all granted < /Directory> ErrorLog ${APACHE_LOG_DIR}/redmine_error.log CustomLog ${APACHE_LOG_DIR}/redmine_access.log combined < /VirtualHost>Attention ! Enlever l'espace après le 1er chevron.
Sauvegarder le fichier, activer le virtual host redmine et redémarrer le service apache :
sudo a2ensite redmine sudo systemctl restart apache2
Accès Redmine
Ouvrir un navigateur web et se rendre sur http://redmine.example.com

Cliquer sur "Connexion"

Renseigner le compte admin et le mot de passe par défaut : admin/admin. Un nouveau mot de passe est demandé

L'installation de Redmine est terminée
