FrRedmineInstall » History » Version 19

Jean-Baptiste Barth, 2010-07-18 19:50
Update to reflect english version (first shot)

1 1 Fabrice Phung
h1. Installer Redmine
2 1 Fabrice Phung
3 1 Fabrice Phung
{{>TOC}}
4 1 Fabrice Phung
5 8 yannick quenec'hdu
h2. Exigences
6 9 yannick quenec'hdu
7 8 yannick quenec'hdu
h3. Système d'exploitation 
8 9 yannick quenec'hdu
9 11 yannick quenec'hdu
Redmine devrait fonctionner sur la plupart des Unix, Linux, Mac et systèmes Windows aussi longtemps que Ruby est disponible sur ces plates-formes.
10 1 Fabrice Phung
11 19 Jean-Baptiste Barth
h3. Ruby, Ruby on Rails, Rack
12 1 Fabrice Phung
13 17 yannick quenec'hdu
* Les versions de Ruby on Rails pour une version donnée de Redmine sont les suivantes :
14 1 Fabrice Phung
15 11 yannick quenec'hdu
|_. Version de Redmine|_. Versions de Ruby supportées|_. Version de Rails exigée|_. Version de Rails exigée|
16 8 yannick quenec'hdu
|current trunk|ruby 1.8.6, 1.8.7|Rails 2.3.5|Rack 1.0.1|
17 19 Jean-Baptiste Barth
|trunk de r2493 à r2886|ruby 1.8.6, 1.8.7|Rails 2.2.2||
18 19 Jean-Baptiste Barth
|trunk avant r2493|ruby 1.8.6, 1.8.7|Rails 2.1.2||
19 8 yannick quenec'hdu
|0.9.x|ruby 1.8.6, 1.8.7|Rails 2.3.5|Rack 1.0.1|
20 8 yannick quenec'hdu
|0.8.x|ruby 1.8.6, 1.8.7|Rails 2.1.2||
21 8 yannick quenec'hdu
|0.7.x|ruby 1.8.6|Rails 2.0.2||
22 8 yannick quenec'hdu
23 1 Fabrice Phung
Les distributions officielles comprennent la version appropriée de Rails dans leur répertoire @vendor@. Aucune action n'est donc demandée. Si vous faites un checkout des sources depuis le dépôt Redmine, vous pouvez installer une version spécifique de Rails sur votre machine en lançant :
24 1 Fabrice Phung
25 8 yannick quenec'hdu
 gem install rails -v=2.3.5 
26 2 Fabrice Phung
27 18 yannick quenec'hdu
Installer Rack: 
28 18 yannick quenec'hdu
29 18 yannick quenec'hdu
 gem install rack -v=1.0.1 
30 18 yannick quenec'hdu
31 8 yannick quenec'hdu
Notes:
32 8 yannick quenec'hdu
* *Ruby 1.9 n'est pas supporté.* Vous _devez_ utiliser Ruby 1.8.x comme indiqué au dessus.
33 8 yannick quenec'hdu
* RubyGems 1.3.1 est obligatoire
34 8 yannick quenec'hdu
* Rake 0.8.3 est obligatoire
35 19 Jean-Baptiste Barth
* Rack 1.0.1  est obligatoire. Si vous n'avez pas la version exacte, la migration de la base de données peut échouer.
36 18 yannick quenec'hdu
37 8 yannick quenec'hdu
38 19 Jean-Baptiste Barth
h3. Base de données
39 1 Fabrice Phung
40 19 Jean-Baptiste Barth
* MySQL 5.0 ou plus (recommandé)
41 19 Jean-Baptiste Barth
** Assurez-vous d'avoir installé les liens C pour Ruby qui améliorent considérablement les performances. Vous pouvez les obtenir en exécutant la commande @gem install mysql@. Si vous rencontrez des problèmes lors de l'installation de cette gem, consultez la "page dédiée du du Ruby on Rails":http://wiki.rubyonrails.org/fr/database-support/mysql
42 19 Jean-Baptiste Barth
** le support de MySQL 5.1 par la gem mysql n'est pas garanti pour le moment
43 19 Jean-Baptiste Barth
** les versions Mysql 4.1 et 4.X supérieurs peuvent poser des problèmes
44 1 Fabrice Phung
45 8 yannick quenec'hdu
* PostgreSQL 8
46 19 Jean-Baptiste Barth
** Il faut être sûr que le format de date (datestyle) de votre base de données est positionné à "ISO" (paramètre par défaut de Postgres). Vous pouvez la positionner avec la commande: @ALTER DATABASE "redmine_db" SET datestyle="ISO,MDY";@
47 19 Jean-Baptiste Barth
** Certaines anomalies dans PostgreSQL 8.4.0 et 8.4.1 affectent le comportement de Redmine (#4259, #4314), elles sont corrigées dans PostgreSQL 8.4.2
48 19 Jean-Baptiste Barth
** Assurez vous d'avoir installé le connecteur PosgreSQL pour Ruby. Vous pouvez le faire en utilisant une des techniques suivantes :
49 19 Jean-Baptiste Barth
***  @gem install postgres-pr@
50 19 Jean-Baptiste Barth
***  @gem install pg@ (fonctionne avec une connexion SSL, peut nécessiter les librairies de développement libraries/packages pour votre OS avant la compilation)
51 19 Jean-Baptiste Barth
**** Ubuntu OS: La librairie de développement peut être installée de la manière suivante (ou similaire): @sudo aptitude install libdbd-pg-ruby1.8@
52 8 yannick quenec'hdu
53 8 yannick quenec'hdu
54 1 Fabrice Phung
* SQLite 3 (svp lisez ceci: http://weblog.rubyonrails.org/2007/1/29/using-sqlite3-with-rails)
55 1 Fabrice Phung
56 8 yannick quenec'hdu
57 1 Fabrice Phung
* Optionnel:
58 1 Fabrice Phung
59 11 yannick quenec'hdu
    * binaires SCM (exemple  @svn@), pour la consultation des dépôts (doivent être disponible dans votre PATH). Voir [[RedmineRepositories]] pour consulter les exigences et  comptabilités des différents SCM.
60 8 yannick quenec'hdu
      *  (to enable Gantt export to png image)
61 8 yannick quenec'hdu
      * "RMagick":http://rmagick.rubyforge.org/ (pour activer l'export Gantt dans une image au format png)
62 8 yannick quenec'hdu
      * "Ruby OpenID Library":http://openidenabled.com/ruby-openid/ (Pour activer le support  OpenID) [seulement sur pour le trunck de Redmine / 0.9-dev]  La version 2 ou supérieure est obligatoire.
63 1 Fabrice Phung
64 1 Fabrice Phung
65 1 Fabrice Phung
h2. Installation
66 1 Fabrice Phung
67 1 Fabrice Phung
1. [[Download|Téléchargez]] et extrayez l'archive ou faites un [[CheckingoutRedmine|checkout]] de Redmine.
68 1 Fabrice Phung
69 1 Fabrice Phung
2. Créez une base de données vide nommée par exemple @redmine@.
70 1 Fabrice Phung
71 1 Fabrice Phung
Pour MySQL:
72 1 Fabrice Phung
73 8 yannick quenec'hdu
<pre>
74 8 yannick quenec'hdu
create database redmine character set utf8;
75 8 yannick quenec'hdu
create user 'redmine'@'localhost' identified by 'my_password';
76 8 yannick quenec'hdu
grant all privileges on redmine.* to 'redmine'@'localhost';
77 8 yannick quenec'hdu
</pre>
78 1 Fabrice Phung
79 8 yannick quenec'hdu
Pour les versions de MySQL antérieures à la 5.0.2 - passer l'étape 'create user' et opter plutôt pour cette commande :
80 8 yannick quenec'hdu
<pre>
81 8 yannick quenec'hdu
grant all privileges on redmine.* to 'redmine'@'localhost' identified by 'my_password';
82 8 yannick quenec'hdu
</pre>
83 8 yannick quenec'hdu
84 8 yannick quenec'hdu
For PostgreSQL:
85 8 yannick quenec'hdu
86 8 yannick quenec'hdu
<pre>
87 8 yannick quenec'hdu
CREATE ROLE redmine LOGIN ENCRYPTED PASSWORD 'my_password' NOINHERIT VALID UNTIL 'infinity';
88 8 yannick quenec'hdu
CREATE DATABASE redmine WITH ENCODING='UTF8' OWNER=redmine;
89 8 yannick quenec'hdu
</pre>
90 8 yannick quenec'hdu
91 1 Fabrice Phung
3. Copiez @config/database.yml.example@ dans @config/database.yml@ et éditez ce fichier pour configurer vos paramètres de base dans l'environnement "production".
92 1 Fabrice Phung
93 1 Fabrice Phung
Exemple pour une base de données MySQL:
94 1 Fabrice Phung
95 8 yannick quenec'hdu
<pre>
96 8 yannick quenec'hdu
production:
97 8 yannick quenec'hdu
  adapter: mysql
98 8 yannick quenec'hdu
  database: redmine
99 8 yannick quenec'hdu
  host: localhost
100 8 yannick quenec'hdu
  username: redmine
101 8 yannick quenec'hdu
  password: my_password
102 8 yannick quenec'hdu
</pre>
103 1 Fabrice Phung
104 8 yannick quenec'hdu
Si votre serveur ne fonctionne pas sur le port standard (3306), utiliser plutôt cette configuration:
105 1 Fabrice Phung
106 8 yannick quenec'hdu
<pre>
107 8 yannick quenec'hdu
production:
108 8 yannick quenec'hdu
  adapter: mysql
109 8 yannick quenec'hdu
  database: redmine
110 8 yannick quenec'hdu
  host: localhost
111 8 yannick quenec'hdu
  port: 3307
112 8 yannick quenec'hdu
  username: redmine
113 8 yannick quenec'hdu
  password: my_password
114 8 yannick quenec'hdu
</pre>
115 8 yannick quenec'hdu
116 8 yannick quenec'hdu
117 8 yannick quenec'hdu
Exemple pour la base de données PostgreSQL (port par défaut):
118 8 yannick quenec'hdu
119 8 yannick quenec'hdu
<pre>
120 8 yannick quenec'hdu
production:
121 8 yannick quenec'hdu
  adapter: postgresql
122 8 yannick quenec'hdu
  database: <le nom de votre base de données>
123 8 yannick quenec'hdu
  host: <nom de la machine de la DB>
124 8 yannick quenec'hdu
  username: <identifiant postgres>
125 8 yannick quenec'hdu
  password: <mot de passe postgres>
126 8 yannick quenec'hdu
  encoding: utf8
127 8 yannick quenec'hdu
  schema_search_path: <schéma de la base de données> (par défaut - public)
128 8 yannick quenec'hdu
</pre>
129 8 yannick quenec'hdu
130 11 yannick quenec'hdu
4. Générer un secret de session. Il est obligatoire depuis le trunck r2493 ou pour les versions de Redmine released 0.8.7 et supérieure.
131 8 yannick quenec'hdu
132 11 yannick quenec'hdu
Redmine stocke les données de session dans un cookie par défaut, ce qui nécessite un secret pour être généré. Ceci peut être fait en exécutant:
133 8 yannick quenec'hdu
134 8 yannick quenec'hdu
   RAILS_ENV=production rake config/initializers/session_store.rb
135 8 yannick quenec'hdu
136 11 yannick quenec'hdu
Si vous utilisez une version de Redmine postérieur à r3055, le fichier ci-dessus n'existe plus, il était obsolète sur le r3054. Sur ces versions, exécutez
137 8 yannick quenec'hdu
138 8 yannick quenec'hdu
   rake generate_session_store
139 8 yannick quenec'hdu
140 8 yannick quenec'hdu
141 8 yannick quenec'hdu
5. Créez la structure de base en lançant la commande suivante depuis le répertoire racine de l'application:
142 8 yannick quenec'hdu
143 1 Fabrice Phung
  rake db:migrate RAILS_ENV="production"
144 1 Fabrice Phung
145 1 Fabrice Phung
Ceci va créer les tables et le compte administrateur.
146 1 Fabrice Phung
147 13 yannick quenec'hdu
6. Insérez les données de la configuration par défaut dans la base en lançant la commande suivante:
148 1 Fabrice Phung
149 1 Fabrice Phung
  rake redmine:load_default_data RAILS_ENV="production"
150 1 Fabrice Phung
151 8 yannick quenec'hdu
Si vous obtenez l'erreur suivante: 
152 8 yannick quenec'hdu
<pre>
153 8 yannick quenec'hdu
Rake aborted!
154 8 yannick quenec'hdu
no such file to load -- net/https
155 8 yannick quenec'hdu
</pre>
156 8 yannick quenec'hdu
157 11 yannick quenec'hdu
Vous devez installer la librairie libopenssl-ruby1.8, depuis ubuntu, exécuter la commande suivante : apt-get install libopenssl-ruby1.8
158 8 yannick quenec'hdu
159 13 yannick quenec'hdu
7. Insérer les données de configuration par defaut dans la base de données, en exécutant la commande suivante:
160 8 yannick quenec'hdu
161 8 yannick quenec'hdu
  RAILS_ENV=production rake redmine:load_default_data
162 8 yannick quenec'hdu
163 11 yannick quenec'hdu
Cette étape est optionnelle, mais *fortement recommandée*, sauf si vous définissez votre nouvelle configuration. Elle va charger les rôles par défaut, les trackers, statuts, workflows et énumérations.
164 2 Fabrice Phung
165 14 yannick quenec'hdu
8. Paramétrez les permissions
166 1 Fabrice Phung
167 1 Fabrice Phung
NB: _Les utilisateurs sous Windows doivent sauter cette section._
168 1 Fabrice Phung
169 8 yannick quenec'hdu
L'utilisateur qui exécute Redmine doit avoir les permissions en écriture sur les sous-répertoires suivants: @files@, @log@, @tmp@ (créer ce dernier s'il n'est pas présent).
170 1 Fabrice Phung
171 8 yannick quenec'hdu
A supposer que vous fassiez fonctionner Redmine avec un utilisateur@redmine@:
172 1 Fabrice Phung
173 1 Fabrice Phung
<pre>
174 8 yannick quenec'hdu
mkdir tmp public/plugin_assets
175 8 yannick quenec'hdu
sudo chown -R redmine:redmine files log tmp public/plugin_assets
176 8 yannick quenec'hdu
sudo chmod -R 755 files log tmp public/plugin_assets
177 8 yannick quenec'hdu
</pre>
178 1 Fabrice Phung
179 1 Fabrice Phung
180 14 yannick quenec'hdu
9. Testez l'installation en exécutant le serveur web WEBrick:
181 1 Fabrice Phung
182 8 yannick quenec'hdu
  ruby script/server webrick -e production
183 1 Fabrice Phung
184 11 yannick quenec'hdu
Une fois WEBrick démarré, saisir l'URL dans votre navigateur http://localhost:3000/. Vous devriez voir apparaître la page de bienvenue de Redmine.
185 1 Fabrice Phung
186 14 yannick quenec'hdu
10. Utilisez le compte administrateur par défaut pour vous connecter:
187 2 Fabrice Phung
188 2 Fabrice Phung
    * identifiant: admin
189 2 Fabrice Phung
    * mot de passe: admin
190 2 Fabrice Phung
191 2 Fabrice Phung
Vous pouvez aller sur  @Administration@ pour modifier la configuration de l'application.
192 2 Fabrice Phung
193 2 Fabrice Phung
h2. Configuration du serveur SMTP
194 2 Fabrice Phung
195 8 yannick quenec'hdu
Copier le fichier @config/email.yml.example@ en @config/email.yml@ et éditer le fichier pour adapter les paramètres SMTP.
196 1 Fabrice Phung
197 8 yannick quenec'hdu
Consulter les exemples de configuration [[frRedmineConfigurationEmail|Exemple de configuration de mail]].
198 8 yannick quenec'hdu
199 11 yannick quenec'hdu
Ne pas oublier de redémarrer l'application après avoir effectué les modifications 
200 8 yannick quenec'hdu
201 8 yannick quenec'hdu
202 8 yannick quenec'hdu
h3. Sauvegarde
203 8 yannick quenec'hdu
204 11 yannick quenec'hdu
Une sauvegarde Redmine inclue les éléments suivants:
205 10 yannick quenec'hdu
* Les données (stockées dans votre base de données Redmine)
206 11 yannick quenec'hdu
* Les fichiers (Stockés dans le répertoire @files@ de votre installation de Redmine)
207 8 yannick quenec'hdu
208 10 yannick quenec'hdu
Voici un simple script shell que vous pouvez utiliser quotidiennement pour sauvegarder vos données (en supposant que vous utilisez une base de données mysql)
209 8 yannick quenec'hdu
210 8 yannick quenec'hdu
<pre>
211 10 yannick quenec'hdu
# Base de données
212 8 yannick quenec'hdu
/usr/bin/mysqldump -u <username> -p<password> <redmine_database> | gzip > /path/to/backup/db/redmine_`date +%y_%m_%d`.gz
213 8 yannick quenec'hdu
214 10 yannick quenec'hdu
# Fichiers
215 1 Fabrice Phung
rsync -a /path/to/redmine/files /path/to/backup/files
216 1 Fabrice Phung
</pre>
217 1 Fabrice Phung
218 12 yannick quenec'hdu
h2. Notes à propos de l'installation sur Windows
219 1 Fabrice Phung
220 10 yannick quenec'hdu
Récupérer et installer  rubyinstaller depuis le site http://rubyforge.org. Depuis le menu démarrer, exécuter la console @cmd@ 
221 1 Fabrice Phung
222 10 yannick quenec'hdu
Depuis la console les commandes suivantes :
223 1 Fabrice Phung
224 10 yannick quenec'hdu
<pre>
225 10 yannick quenec'hdu
RAILS_ENV=production rake db:migrate
226 10 yannick quenec'hdu
RAILS_ENV=production rake redmine:load_default_data
227 10 yannick quenec'hdu
</pre>
228 1 Fabrice Phung
229 10 yannick quenec'hdu
Doivent être changées par les commandes suivantes :
230 1 Fabrice Phung
231 10 yannick quenec'hdu
<pre>
232 10 yannick quenec'hdu
set RAILS_ENV=production
233 10 yannick quenec'hdu
rake db:migrate
234 10 yannick quenec'hdu
rake redmine:load_default_data
235 10 yannick quenec'hdu
</pre>  
236 1 Fabrice Phung
237 10 yannick quenec'hdu
Vous pouvez avoir besoin d'installer mysql gem, avec la commande
238 1 Fabrice Phung
239 1 Fabrice Phung
<pre>
240 10 yannick quenec'hdu
gem install mysql
241 1 Fabrice Phung
</pre>
242 10 yannick quenec'hdu
243 10 yannick quenec'hdu
Et dans certains cas, il peut être nécessaire de copier le fichier  libmysql.dll file dans votre répertoire ruby/bin.
244 10 yannick quenec'hdu
Toutes les librairies ne semblent pas fonctionner, récupérer sur  http://instantrails.rubyforge.org/svn/trunk/InstantRails-win/InstantRails/mysql/bin/libmySQL.dll
245 10 yannick quenec'hdu
246 10 yannick quenec'hdu
h3. Les Problèmes avec MySQL 5.1 et Rails 2.2+
247 10 yannick quenec'hdu
248 10 yannick quenec'hdu
Avec la dernière version de MySQL, vous pouvez rencontrer plusieurs erreurs, telles que : "!!! The bundled mysql.rb driver has been removed from Ruby 2.2" et quand vous effectuez la commande "gem install mysql" vous pouvez aussi rencontrer plusieurs erreurs. Une solution possible :
249 10 yannick quenec'hdu
250 10 yannick quenec'hdu
Télécharger le fichier DLL depuis le projet InstantRails:
251 10 yannick quenec'hdu
252 10 yannick quenec'hdu
http://instantrails.rubyforge.org/svn/trunk/InstantRails-win/InstantRails/mysql/bin/libmySQL.dll
253 10 yannick quenec'hdu
254 10 yannick quenec'hdu
Copier ce fichier dans le répertoire  \Ruby\bin directory et essayer d'effectuer une nouvelle fois votre commande rake.
255 10 yannick quenec'hdu
256 10 yannick quenec'hdu
h2. Alternative : installation manuelle 
257 10 yannick quenec'hdu
258 10 yannick quenec'hdu
Certains utilisateurs préfèrent sauter l'installation manuelle en utilisant un package pré-installé depuis la page de téléchargement [[Download#Third-party-Redmine-bundles|third-party Redmine bundles]].