Wiki » Historique » Révision 163
« Précédent |
Révision 163/279
(diff)
| Suivant »
Patrice Nadeau, 2015-05-07 12:26
h1. Redmine
Logiciel de gestion de projets, sources, bugs et timeline.
Contient un module de Wiki, de fichiers.
Supporte aussi les systèmes de version de fichier (Git, SVN entre autre).
Disponible à http://www.redmine.org/projects/redmine/wiki/Download
De base, ne fonctionne pas avec Apache
Sa principale difficulté d’installation est sa dépendance à Ruby.
Voir aussi :
{{lastupdated_at}} {{lastupdated_by}}
- Contenu
- Installation sur le serveur :
- Activer le module dans le ou les projets voulus
- Arrêter Redmine
- Renommer le répertoire actuel
- Télécharger la nouvelle version
- Décompresser le fichier
- Copier les anciens fichiers de configurations
- Refaire la sécurité
- Ne copier que les « plugins » qui ne sont pas fournis par la nouvelle version de Redmine
- Installer les « gems »
- Mise à jour (base de donnés, « plugins ») et ménage :
- Relancer Redmine
- Vérifier
h2. Installation
Ce guide documente une installation GNU/Linux avec les version suivantes :
- openSUSE 13.1
- Redmine 3.0.1
h3. Prérequis
Un serveur LAMP(Linux, Apache, MySQL, PHP) openSUSE fonctionnel.
Les logiciels supplémentaires suivants :
zypper install libmysqlclient-devel ruby-2.0 ruby20-devel rubygem-bundler rubygem-mysql2 rubygem-pg ImageMagick ImageMagick-devel git gcc make
h3. MySQL
Création de la base de donnés.
Substituer les items suivants à votre choix :
- redmine : Usager pour la base de donnés.
- password : Mot de passe de la base de donnees.
- db : Nom de la base de donnés.
Lancer MySQL :
mysql -u root -p
Commandes MySQL :
create database db character set utf8;
create user 'redmine'@'localhost' identified by 'password';
grant all privileges on db.* to 'redmine'@'localhost';
commit;
quit;
h3. Redmine
L’installation sera faite dans \srv\redmine (exemple avec la version 2.5)
cd /srv/
svn co http://svn.redmine.org/redmine/branches/2.5-stable redmine
cd redmine
cp config/database.yml.example config/database.yml
cp config/configuration.yml.example config/configuration.yml
mkdir public/plugin_assets
Si un usager MySQL autre que root ou mot de passe diffèrent est utilisé :
Éditer le fichier config/database.yml, section Production et modifier les lignes :
- username
- password
Éditer le fichier config/configuration.yml et modifier la configuration SMTP.
h3. Ruby
Installation des gems de Ruby
cd redmine
gem install bundler
gem install activerecord-mysql2-adapter
bundle install --without development test
h3. Initialisation
Création de la cryptographie, de la structure et des donnés de base :
cd /srv/redmine
rake generate_secret_token
RAILS_ENV=production rake db:migrate
RAILS_ENV=production rake redmine:load_default_data
h3. Serveur web
Redmine peux être utiliser avec le serveur inclus webrick (port 3000) ou Apache (port 80).
h4. Webrick
Ouvrir dans le pare-feu le port TCP 3000 :
yast firewall services add tcpport=3000 zone=EXT
Lancer le serveur web
cd /srv/redmine
ruby script/rails server webrick -e production
h5. Transformation en daemon
Le script original vient de http://www.redmine.org/projects/redmine/wiki/HowTo_Install_Redmine_on_openSUSE
Copier le script dans le fichier /etc/init.d/redmine
Le modifier de la manière suivante :
- REDMINE_BIN=/srv/redmine/current/script/rails
- REDMINE_USER=user
- Corriger le «typo» à la ligne 73 : $REDMI-NE_BIN -> $REDMINE_BIN
- Dans la section stop, après la ligne killproc, ajouter rm $PIDFILE
Rendre le fichier exécutable, l’ajouter aux services SUSE et l’exécuter au démarrage :
chmod 0755 /etc/init.d/redmine
cp -s /etc/init.d/redmine /usr/bin/rcredmine
chkconfig -a redmine
h4. Apache
En test, voir #23
Transformation pour utilisation avec Apache.
- N'utilise pas webrick
- Accessible par le port 80 au lieu de 3000
Information provenant de :
- web :
** http://martin-denizet.com/install-redmine-2-5-x-with-git-and-subversion-on-debian-with-apache2-rvm-and-passenger/
** http://www.redmine.org/projects/redmine/wiki/HowTo_configure_Apache_to_run_Redmine
** http://www.redmine.org/boards/2/topics/43924 - livre : "Mastering Redmine":http://shop.oreilly.com/product/9781849519144.do
h3. Modules Apache
Ajout
zypper install libcurl-devel apache2-devel apache2-mod_perl perl-Apache-DBI subversion-server
Activation des modules Apache
a2enmod ssl
a2enmod perl
a2enmod dav
a2enmod dav_svn
a2enmod dav_fs
a2enmod rewrite
a2enmod headers
h3. Modules Passenger
cd /srv/redmine
gem install passenger
passenger-install-apache2-module2.0
Changer les droits sur le fichiers de log
chmod 0666 log/production.log
Créer le dossier des fichiers temporaire
Par défaut les fichiers sont dans /tmp mais se font enlever par le « clean-up » journalier et doivent être refait avec un reload d'Apache
mkdir tmp/passenger
h3. Activation de la configuration
Créer le fichier /etc/apache2/conf.d/passenger.conf et ajouter la configuration inscrite par l'installation.
Ajouter dans /etc/apache2/vhosts.d/vhost.conf
# La ligne suivante est nécessaire seulement si plusieurs site web son présents sur le même serveur.
ServerName redmine.yourdomain.com
DocumentRoot /srv/redmine/public
RailsEnv production
PassengerAppRoot /srv/redmine
PassengerTempDir /srv/redmine/tmp/passenger
Options Indexes ExecCGI FollowSymLinks
AllowOverride None
Order deny,allow
Allow from all
Relancer Apache :
systemctl reload apache2
h2. Post-installation
A partir d’un navigateur web, se brancher à :
- Webrick : http://server:3000
- Apache : http://server
Utiliser l’usager admin avec le mot de passe admin.
Vérifier la configuration dans Administration, Information.
Si un avertissement apparait pour l’écriture des répertoires, changer les droits :
Semble être nécessaire que pour Apache
cd /srv/redmine
chmod -R 0777 public/plugin_assets
chmod -R 0777 files
chown -R wwwrun:www tmp
# Pour la macro "thumbnails" du wiki, le plugin "redmine_people" nécessite au moins 0775
chmod -R 0777 tmp/thumbnails
h2. Personnalisation
h3. Ajout d’un logo
Les informations viennent de : http://www.redmine.org/projects/redmine/wiki/Howto_add_a_logo_to_your_Redmine_banner
Copier le logo dans /srv/redmine/public/images/logo.png
Modifier le fichier /srv/redmine/app/views/layout/base.rhtml.erb
- Ajouter la ligne
- Si on ne veux plus afficher le titre, mettre en commentaire :
Redémarrer Redmine
h3. Plugins
h4. Extended Fields
Permet de créer de nouveau champ dans la basse de donnés.
Incompatible avec la version 3 de Redmine
http://www.redmine.org/plugins/extended_fields
Installation :
cd /srv/redmine
svn co http://svn.s-andy.com/extended-fields plugins/extended_fields
rake redmine:plugins:migrate RAILS_ENV=production
Relancer Redmine
h4. Redmine Rouge
Permet le support de langage supplémentaire pour l'affichage de la syntaxe d'un code source.
"Langage supporté":http://rouge.jayferd.us/demo
https://github.com/ngyuki/redmine_rouge
cd /srv/redmine/plugins
git clone https://github.com/ngyuki/redmine_rouge.git
cd ..
bundle install
Relancer redmine
h4. Code Highlight
http://www.redmine.org/plugins/codehightlight_button
Bouton permettant de sélectionner du code et d'activer la syntaxe selon un langage.
Installation
cd /srv/redmine/plugins
git clone https://github.com/mediatainment/redmine_codebutton.git
cd ..
rake redmine:plugins
rake redmine:plugins:migrate RAILS_ENV=production
# Relancer Redmine
rcredmine restart
Ajout des langages supplémentaires supportées par le « plug-in » Redmine Rouge. Voir "ici":https://github.com/mediatainment/redmine_codebutton/issues/2
Éditer le fichier /srv/redmine/plugins/redmine_codebutton/assets/javascripts/wiki-codehighlight.js
- Ajouter les langages voulus dans la variable codeRayLanguages
Relancer Apache
systemctl reload apache2.service
h4. Redmine Issue Checklist
Je n'utilise plus, l'enregistrement est obligatoire pour le télécharger (RedmineCRM). C'est un « freemium ».
Extends issues to store checklist items
http://redminecrm.com/projects/checklist
Version 2.0.5 -" pas compatible avec Redmine 3.0.1
Installation
cd /srv/redmine/plugins
wget http://redminecrm.com/license_manager/4200/redmine_issue_checklist-2_0_5.zip
unzip redmine_issue_checklist-2_0_5.zip
bundle exec rake redmine:plugins NAME=redmine_issue_checklist RAILS_ENV=production
Relancer Redmine
Configuration
Dans Administration
-
Plugins
** Choisir les options voulues -
Roles and permissions
** Choisir le rôle
Donner les droits voulus sur :
*** Done checklist items
*** Edit checklist items
*** View checklist
h4. Redmine People
Voir #46
Je n'utilise plus, l'enregistrement est obligatoire pour le télécharger (RedmineCRM). C'est un « freemium ».
h4. Like Button
Bouton pour Facebook, Google+ et Twitter
http://www.redmine.org/plugins/like
Installation
cd /srv/redmine/plugins
svn svn co http://svn.s-andy.com/like-button like
Relancer Redmine
h4. Subscription
Permet de s'abonner et de recevoir les changements fait sur un projet
http://projects.andriylesyuk.com/project/redmine/subscription
Les événements suivants active une notification
- Un nouveau « News »
- La fermeture d'une version d'un projet
- Un nouveau fichier téléchargé
- Un nouvel « issue »
- Une nouvelle page Wiki
- Un nouveau « commit »
- Un nouveau forum
Installation sur le serveur :
# Se placer dans le dossier de Remdine
cd /srv/redmine
# Telecharger le plugin
wget http://projects.andriylesyuk.com/attachments/download/613/subscription-0.0.1b.tar.bz2
tar -xvf subscription-0.0.1b.tar.bz2
mv subscription-0.0.1b.tar.bz2 subscription
# Lce copier avec les autres plugins
mv subscription/ plugins/
# L'inclure dans Redmine
rake redmine:plugins:migrate RAILS_ENV=production
# Reload de Apache
systemctl reload apache2.service
Activer le module dans chacun des projet voulus.
h4. Wiki Extensions
Voir #47
Ajoute des macros au Wiki de Redmine
La dernière version est disponible à https://bitbucket.org/haru_iida/redmine_wiki_extensions/downloads
Parmi les macros ajoutées:
Liste complète à http://www.r-labs.org/projects/r-labs/wiki/Wiki_Extensions_en
- Emoticons : Un bouton apparait pour ajouter des « smilley » qui seront afficher en graphique
- !{{lastupdated_by}} : affiche le nom de la dernière personne à avoir modifier la page
- !{{lastupdated_at}} : affiche la date de la dernière modification de la page
Des « smilley » non voulus peuvent apparaitre dans les wiki déjà en place. L'utilisation de seras alors nécessaire.
Étapes :
Installation sur le serveur :¶
cd /srv/redmine/
wget https://bitbucket.org/haru_iida/redmine_wiki_extensions/downloads/redmine_wiki_extensions-0.7.0.zip
unzip redmine_wiki_extensions-0.7.0.zip -d plugins/
rake db:migrate_plugins RAILS_ENV=production
systemctl reload apache2.service
Activer le module dans le ou les projets voulus¶
h4. WikiNG
Personnalisation des items dans le wiki.
Ajoute des boutons et des icônes comme FIXME et TODO.
« Écrase » le bouton installé par Code Highlight
http://projects.andriylesyuk.com/project/redmine/wiking
Installation
cd /srv/redmine
wget http://projects.andriylesyuk.com/attachments/download/564/wiking-1.0.0b.tar.bz2
tar xvf wiking-1.0.0b.tar.bz2
mv wiking plugins
rake redmine:plugins:migrate RAILS_ENV=production
Relancer Redmine
h2. Retrait d'un plug-in
cd /srv/redmine
rake redmine:plugins:migrate NAME=plugin_name VERSION=0 RAILS_ENV=production
rm -r plugins/plugin_name
rake db:migrate_plugins RAILS_ENV=production
h2. Mise à jour
Version 3.0.1
S’assurer d'avoir les dernières versions des plugins ET qu'il sont compatibles avec la version de Redmine à installer.
Disponible à http://www.redmine.org/projects/redmine/wiki/Download
Mise à jour de Redmine à partir d'une version stable
Arrêter Redmine¶
Renommer le répertoire actuel¶
cd /srv/
mv redmine redmine.old
Télécharger la nouvelle version¶
wget http://www.redmine.org/releases/redmine-3.0.1.tar.gz
Décompresser le fichier¶
tar xvf redmine-3.0.1.tar.gz
mv redmine-3.0.1 redmine
Copier les anciens fichiers de configurations¶
cp redmine.old/config/configuration.yml redmine/config
cp redmine.old/config/database.yml redmine/config
cp -r redmine.old/files redmine
Refaire la sécurité¶
chown -R root:root redmine
# Les commandes suivantes sont nécessaire seulement si Apache est utilisé
# Le même owner que config.ru doit être utiliser pour plusieurs dossier
chown wwwrun:www redmine/config.ru
chown -R wwwrun:www redmine/tmp
mkdir redmine/tmp/passenger
chown -R wwwrun:www redmine/tmp
chmod 0777 redmine/public/plugin_assets
chmod -R 0777 redmine/files
Ne copier que les « plugins » qui ne sont pas fournis par la nouvelle version de Redmine¶
cp -r redmine.old/plugins/* redmine/plugins
Installer les « gems »¶
cd redmine
bundle install --without development test
Mise à jour (base de donnés, « plugins ») et ménage :¶
bundle exec rake generate_secret_token
bundle exec rake db:migrate RAILS_ENV=production
bundle exec rake redmine:plugins:migrate RAILS_ENV=production
bundle exec rake tmp:cache:clear tmp:sessions:clear
Relancer Redmine¶
Vérifier¶
Administration¶
Projects¶
Users¶
Roles & permissions¶
Essayer d'attacher un fichier à un projet¶
Essayer d’accéder au calendrier d'un projet¶
h2. Copie de sécurité
Remplacer les items suivants :
- username : Usager de la base de donnés.
- password : Mot de passe de la base de donnés.
- database : Nom de la base de données.
- path : Emplacement pour recevoir le fichier.
/usr/bin/mysqldump -u username -p password database | gzip > /path/redmine_`date +%y_%m_%d`.gz
rsync -a /srv/redmine/files /path/
Script un peu plus évolué :
#!/bin/bash
#
# backup_redmine.sh
# Backup of a Redmine setup
# Last Changes: 2013-02-23
# Maintainer: Patrice Nadeau
# TODO Verify the results (folder exist, enough disk pace , etc..)
## The only variable needed to be changed
# Directory of the Redmine install
declare -r RAIL_ROOT='/srv/redmine'
# MySQL database
declare -r MYSQL_DB=''
# MySQL username for the Redemine db
declare -r MYSQL_USER=''
# MySQL password for the Redemine db
declare -r MYSQL_PASSWORD=''
# Directory for the backup (must exist and with no space in the name)
declare -r DIR='/root'
## end
# Exit level
declare -ir EXIT_OK=0
declare -ir EXIT_WARNING=1
declare -ir EXIT_ERROR=2
declare -i STATUS=$EXIT_OK
# The directory inside the archive
declare -r REDMINE='redmine'
TMP_DIR=$DIR/$REDMINE
# This will be used for the archive file
declare -r DST=$DIR/redmine_$(date +%Y%m%d_%H%M%S).tar.gz
# The temporary sql file
declare -r TMP_MYSQL=$TMP_DIR/$MYSQL_DB.mysql
echo "Backup in progress in $DST"
#### Create the temp directory ####
mkdir $TMP_DIR
#### backup MySQL ####
if [ $STATUS -eq $EXIT_OK ]
then
STEP='Creating MySQL backup'
mysqldump --user=$MYSQL_USER --password=$MYSQL_PASSWORD $MYSQL_DB \
> $TMP_MYSQL
STATUS=$?
fi
#### backup the Redmine folder ####
if [ $STATUS -eq $EXIT_OK ]
then
STEP='Creating Redmine'"'"' files backup'
cp --recursive $RAIL_ROOT $TMP_DIR
STATUS=$?
fi
#### create the archive file ####
if [ $STATUS -eq $EXIT_OK ]
then
STEP="Creating archive"
tar --create --gzip --file $DST --directory=$DIR $REDMINE
STATUS=$?
fi
#### cleanup ####
if [ $STATUS -eq $EXIT_OK ]
then
STEP='Cleaning up'
rm --recursive --force $TMP_DIR
STATUS=$?
fi
#### exit ####
if [ $STATUS -eq $EXIT_OK ]
then
echo "Backup done"
else
echo "Bakup failed with error code $STATUS in step $STEP"
fi
exit $STATUS
h2. Dépannage
h3. Mot de passe perdu
Le mot de passe admin par défaut est en hash Sha1 : da3174755c5e82a436b6c7ff87c873ee50d6654b et est admin.
h3. Le service tombe « DEAD » à chaque fois (webrick)
Effacer le fichier /srv/redmine/tmp/pids/server.pid.
Mis à jour par Patrice Nadeau il y a plus de 9 ans · 163 révisions