FrRedmineInstall » History » Version 28

Pierre Labrie, 2012-09-21 20:37

1 22 Alexis Supiot
h1. Installer Redmine facilement
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 23 Pierre Labrie
h3. Ruby, Ruby on Rails, RubyGem
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 1 Fabrice Phung
16 23 Pierre Labrie
|_. Version de Redmine|_. Versions de Ruby supportées|_. Version de Rails exigée|_. Version de RubyGems exigée|
17 23 Pierre Labrie
|current trunk 	|ruby 1.8.7, 1.9.2, 1.9.3, jruby-1.6.7 	|Rails 3.2.8 	|RubyGems <= 1.8|
18 23 Pierre Labrie
|2.1.0 	|ruby 1.8.7, 1.9.2, 1.9.3, jruby-1.6.7 	|Rails 3.2.8 	|RubyGems <= 1.8|
19 23 Pierre Labrie
|2.0.3 	|ruby 1.8.7, 1.9.2, 1.9.3, jruby-1.6.7 	|Rails 3.2.6 	|RubyGems <= 1.8|
20 23 Pierre Labrie
|2.0.2 	|ruby 1.8.7, 1.9.2, 1.9.3, jruby-1.6.7 	|Rails 3.2.5 	|RubyGems <= 1.8|
21 23 Pierre Labrie
|2.0.0, 2.0.1 	|ruby 1.8.7, 1.9.2, 1.9.3, jruby-1.6.7 	|Rails 3.2.3 	|RubyGems <= 1.8|
22 23 Pierre Labrie
|1.4.x 	|ruby 1.8.7, 1.9.2, 1.9.3, jruby-1.6.7 	|Rails 2.3.14 	|RubyGems <= 1.8|
23 18 yannick quenec'hdu
24 8 yannick quenec'hdu
25 8 yannick quenec'hdu
26 19 Jean-Baptiste Barth
h3. Base de données
27 1 Fabrice Phung
28 1 Fabrice Phung
* MySQL 5.0 ou plus (recommandé)
29 24 Pierre Labrie
** 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 mysql2@. Si vous rencontrez des problèmes lors de l'installation de cette gem, consultez la "page dédiée de Ruby on Rails":http://wiki.rubyonrails.org/fr/database-support/mysql
30 19 Jean-Baptiste Barth
** les versions Mysql 4.1 et 4.X supérieurs peuvent poser des problèmes
31 1 Fabrice Phung
32 24 Pierre Labrie
* PostgreSQL 8 ou plus (8.2 ou plus à partir de Redmine 2.0.0)
33 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";@
34 8 yannick quenec'hdu
** 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
35 8 yannick quenec'hdu
36 1 Fabrice Phung
37 24 Pierre Labrie
* SQLite 3
38 8 yannick quenec'hdu
39 20 Jean-Baptiste Barth
h3. Composants optionnels
40 11 yannick quenec'hdu
41 20 Jean-Baptiste Barth
* binaires pour les gestionnaires de version (SCM, par 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.
42 20 Jean-Baptiste Barth
* "RMagick":http://rmagick.rubyforge.org/ (pour activer l'export Gantt dans une image au format png)
43 20 Jean-Baptiste Barth
* "La bibliothèque Ruby OpenID":http://openidenabled.com/ruby-openid/ (pour activer le support  OpenID) ; seulement sur les versions de développement (trunk) de Redmine / 0.9-dev ; a version 2 ou supérieure est obligatoire.
44 1 Fabrice Phung
45 1 Fabrice Phung
h2. Installation
46 1 Fabrice Phung
47 20 Jean-Baptiste Barth
1. [[Download|Téléchargez (en)]] et extrayez l'archive ou faites un [[CheckingoutRedmine|checkout (en)]] de Redmine.
48 1 Fabrice Phung
49 27 Pierre Labrie
2. Depuis la version 1.4.0, Redmine utilise Bundler pour gérer les dépendances de _gems_. Vous devez installer Bundler en premier:
50 1 Fabrice Phung
51 25 Pierre Labrie
<pre>
52 25 Pierre Labrie
gem install bundler
53 25 Pierre Labrie
</pre>
54 25 Pierre Labrie
55 25 Pierre Labrie
Après vous pouvez installer tous les _gems_ requis avec la commande suivante:
56 25 Pierre Labrie
57 25 Pierre Labrie
<pre>
58 25 Pierre Labrie
bundle install --without development test
59 25 Pierre Labrie
</pre>
60 25 Pierre Labrie
61 25 Pierre Labrie
Si ImageMagick n'est pas installé sur votre système, vous pouvez retirer l'installation du _gem rmagick_ avec cette commande:
62 25 Pierre Labrie
<pre>
63 25 Pierre Labrie
bundle install --without development test rmagick
64 25 Pierre Labrie
</pre>
65 25 Pierre Labrie
66 25 Pierre Labrie
Note concernant l'installation de rmagick sur Windows:
67 27 Pierre Labrie
>Au moment d'écrire ces lignes, il se peut que l'installation du @gem rmagick@ fonctionne mal avec la commande @bundle install@ si elle n'est pas déjà installée. Vous pouvez trouver de l'aide "ici":http://www.redmine.org/projects/redmine/wiki/HowTo_install_rmagick_gem_on_Windows 
68 25 Pierre Labrie
> 
69 27 Pierre Labrie
Vous pouvez aussi retirer l'installation des adapteurs que vous n'utilisez pas. Par exemple si vous utilisez MySql, vous pouvez retirer les @gems postgresql et sqlite@ avec la commande `bundle install --without development test postgresql sqlite`.
70 25 Pierre Labrie
71 25 Pierre Labrie
Si vous avez besoin de _gems_ non requis par le noyau Redmine (eg. puma,fcgi), créez un fichier nommé Gemfile.local à la racine de votre répertoire de Redmine et il sera chargé automatiquement au lancement de la commande `bundle install`. Exemple:
72 25 Pierre Labrie
73 25 Pierre Labrie
<pre>
74 25 Pierre Labrie
# Gemfile.local
75 25 Pierre Labrie
gem 'puma'
76 25 Pierre Labrie
</pre>
77 25 Pierre Labrie
78 25 Pierre Labrie
79 25 Pierre Labrie
3. Créez une base de données vide nommée par exemple @redmine@.
80 25 Pierre Labrie
81 1 Fabrice Phung
Pour MySQL:
82 1 Fabrice Phung
83 8 yannick quenec'hdu
<pre>
84 8 yannick quenec'hdu
create database redmine character set utf8;
85 8 yannick quenec'hdu
create user 'redmine'@'localhost' identified by 'my_password';
86 1 Fabrice Phung
grant all privileges on redmine.* to 'redmine'@'localhost';
87 1 Fabrice Phung
</pre>
88 20 Jean-Baptiste Barth
89 8 yannick quenec'hdu
Pour les versions de MySQL antérieures à la 5.0.2 - passez l'étape 'create user' et optez plutôt pour cette commande :
90 8 yannick quenec'hdu
<pre>
91 8 yannick quenec'hdu
grant all privileges on redmine.* to 'redmine'@'localhost' identified by 'my_password';
92 8 yannick quenec'hdu
</pre>
93 20 Jean-Baptiste Barth
94 8 yannick quenec'hdu
Pour PostgreSQL:
95 8 yannick quenec'hdu
96 8 yannick quenec'hdu
<pre>
97 8 yannick quenec'hdu
CREATE ROLE redmine LOGIN ENCRYPTED PASSWORD 'my_password' NOINHERIT VALID UNTIL 'infinity';
98 1 Fabrice Phung
CREATE DATABASE redmine WITH ENCODING='UTF8' OWNER=redmine;
99 8 yannick quenec'hdu
</pre>
100 8 yannick quenec'hdu
101 25 Pierre Labrie
4. Copiez @config/database.yml.example@ dans @config/database.yml@ et éditez ce fichier pour configurer vos paramètres de base dans l'environnement "production".
102 1 Fabrice Phung
103 1 Fabrice Phung
Exemple pour une base de données MySQL:
104 1 Fabrice Phung
105 8 yannick quenec'hdu
<pre>
106 8 yannick quenec'hdu
production:
107 8 yannick quenec'hdu
  adapter: mysql
108 8 yannick quenec'hdu
  database: redmine
109 8 yannick quenec'hdu
  host: localhost
110 1 Fabrice Phung
  username: redmine
111 1 Fabrice Phung
  password: my_password
112 8 yannick quenec'hdu
</pre>
113 8 yannick quenec'hdu
114 8 yannick quenec'hdu
Si votre serveur ne fonctionne pas sur le port standard (3306), utiliser plutôt cette configuration:
115 8 yannick quenec'hdu
116 8 yannick quenec'hdu
<pre>
117 8 yannick quenec'hdu
production:
118 8 yannick quenec'hdu
  adapter: mysql
119 8 yannick quenec'hdu
  database: redmine
120 1 Fabrice Phung
  host: localhost
121 1 Fabrice Phung
  port: 3307
122 8 yannick quenec'hdu
  username: redmine
123 1 Fabrice Phung
  password: my_password
124 8 yannick quenec'hdu
</pre>
125 8 yannick quenec'hdu
126 8 yannick quenec'hdu
127 20 Jean-Baptiste Barth
Exemple pour la base de données PostgreSQL (port par défaut):
128 11 yannick quenec'hdu
129 20 Jean-Baptiste Barth
<pre>
130 8 yannick quenec'hdu
production:
131 8 yannick quenec'hdu
  adapter: postgresql
132 11 yannick quenec'hdu
  database: <le nom de votre base de données>
133 20 Jean-Baptiste Barth
  host: <nom de la machine de la DB>
134 8 yannick quenec'hdu
  username: <identifiant postgres>
135 8 yannick quenec'hdu
  password: <mot de passe postgres>
136 1 Fabrice Phung
  encoding: utf8
137 1 Fabrice Phung
  schema_search_path: <schéma de la base de données> (par défaut - public)
138 1 Fabrice Phung
</pre>
139 1 Fabrice Phung
140 25 Pierre Labrie
5. Générer un secret de session.
141 1 Fabrice Phung
142 25 Pierre Labrie
* Avec Redmine 1.4.x:
143 1 Fabrice Phung
144 25 Pierre Labrie
<pre>
145 25 Pierre Labrie
rake generate_session_store
146 25 Pierre Labrie
</pre>
147 1 Fabrice Phung
148 25 Pierre Labrie
* Avec Redmine 2.x:
149 1 Fabrice Phung
150 25 Pierre Labrie
<pre>
151 25 Pierre Labrie
rake generate_secret_token
152 25 Pierre Labrie
</pre>
153 1 Fabrice Phung
154 1 Fabrice Phung
155 25 Pierre Labrie
6. Créez la structure de base en lançant la commande suivante depuis le répertoire racine de l'application:
156 1 Fabrice Phung
157 25 Pierre Labrie
<pre>
158 25 Pierre Labrie
RAILS_ENV=production rake db:migrate
159 25 Pierre Labrie
</pre>
160 25 Pierre Labrie
161 1 Fabrice Phung
Ceci va créer les tables et le compte administrateur.
162 1 Fabrice Phung
163 25 Pierre Labrie
Si vous obtenez cette erreur:
164 13 yannick quenec'hdu
<pre>
165 8 yannick quenec'hdu
Rake aborted!
166 8 yannick quenec'hdu
no such file to load -- net/https
167 1 Fabrice Phung
</pre>
168 8 yannick quenec'hdu
169 25 Pierre Labrie
Vous devez installer libopenssl-ruby1.8 dans Ubuntu avec cette commande: @apt-get install libopenssl-ruby1.8@
170 8 yannick quenec'hdu
171 25 Pierre Labrie
172 25 Pierre Labrie
7. Insérez les données de la configuration par défaut dans la base en lançant la commande suivante:
173 25 Pierre Labrie
174 25 Pierre Labrie
<pre>
175 25 Pierre Labrie
RAILS_ENV=production rake redmine:load_default_data
176 25 Pierre Labrie
</pre>
177 25 Pierre Labrie
178 14 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.
179 1 Fabrice Phung
180 1 Fabrice Phung
8. Paramétrez les permissions
181 1 Fabrice Phung
182 1 Fabrice Phung
NB: _Les utilisateurs sous Windows doivent sauter cette section._
183 1 Fabrice Phung
184 1 Fabrice Phung
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).
185 1 Fabrice Phung
186 1 Fabrice Phung
A supposer que vous fassiez fonctionner Redmine avec un utilisateur @redmine@:
187 1 Fabrice Phung
188 1 Fabrice Phung
<pre>
189 1 Fabrice Phung
mkdir tmp public/plugin_assets
190 1 Fabrice Phung
sudo chown -R redmine:redmine files log tmp public/plugin_assets
191 1 Fabrice Phung
sudo chmod -R 755 files log tmp public/plugin_assets
192 1 Fabrice Phung
</pre>
193 8 yannick quenec'hdu
194 1 Fabrice Phung
9. Testez l'installation en exécutant le serveur web WEBrick:
195 8 yannick quenec'hdu
196 25 Pierre Labrie
* Avec Redmine 1.4.x:
197 25 Pierre Labrie
198 25 Pierre Labrie
<pre>
199 25 Pierre Labrie
ruby script/server webrick -e production
200 25 Pierre Labrie
</pre>
201 25 Pierre Labrie
202 25 Pierre Labrie
* Avec Redmine 2.x:
203 25 Pierre Labrie
204 25 Pierre Labrie
<pre>
205 25 Pierre Labrie
ruby script/rails server webrick -e production
206 25 Pierre Labrie
</pre>
207 25 Pierre Labrie
208 11 yannick quenec'hdu
209 1 Fabrice Phung
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.
210 14 yannick quenec'hdu
211 2 Fabrice Phung
10. Utilisez le compte administrateur par défaut pour vous connecter:
212 2 Fabrice Phung
213 2 Fabrice Phung
    * identifiant: admin
214 2 Fabrice Phung
    * mot de passe: admin
215 2 Fabrice Phung
216 2 Fabrice Phung
Vous pouvez aller sur  @Administration@ pour modifier la configuration de l'application.
217 2 Fabrice Phung
218 28 Pierre Labrie
h2. Configuration
219 8 yannick quenec'hdu
220 28 Pierre Labrie
Depuis la version 1.2.0, les configurations de Redmine sont définies dans le fichier @config/configuration.yml@.
221 1 Fabrice Phung
222 28 Pierre Labrie
Copier le fichier @config/configuration.yml.example@ en @config/configuration.yml@ et éditer le fichier pour adapter les paramètres SMTP et surcharger les configuration par défaut; le fichier est bien documenté par lui-même et devrait vous guider facilement.
223 8 yannick quenec'hdu
224 28 Pierre Labrie
Les configurations peuvent être définies par environnements _Rails_(production/development/test).
225 28 Pierre Labrie
226 11 yannick quenec'hdu
Ne pas oublier de redémarrer l'application après avoir effectué les modifications 
227 1 Fabrice Phung
228 28 Pierre Labrie
h3. Configuration du serveur SMTP
229 8 yannick quenec'hdu
230 28 Pierre Labrie
La configuration du SMTP fait l'objet d'un article distinct. Consulter les exemples de configuration [[frRedmineConfigurationEmail|Exemple de configuration de mail]].
231 28 Pierre Labrie
232 8 yannick quenec'hdu
h3. Sauvegarde
233 11 yannick quenec'hdu
234 10 yannick quenec'hdu
Une sauvegarde Redmine inclue les éléments suivants:
235 11 yannick quenec'hdu
* Les données (stockées dans votre base de données Redmine)
236 8 yannick quenec'hdu
* Les fichiers (Stockés dans le répertoire @files@ de votre installation de Redmine)
237 10 yannick quenec'hdu
238 8 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)
239 8 yannick quenec'hdu
240 10 yannick quenec'hdu
<pre>
241 8 yannick quenec'hdu
# Base de données
242 8 yannick quenec'hdu
/usr/bin/mysqldump -u <username> -p<password> <redmine_database> | gzip > /path/to/backup/db/redmine_`date +%y_%m_%d`.gz
243 10 yannick quenec'hdu
244 1 Fabrice Phung
# Fichiers
245 1 Fabrice Phung
rsync -a /path/to/redmine/files /path/to/backup/files
246 1 Fabrice Phung
</pre>
247 28 Pierre Labrie
248 28 Pierre Labrie
Pour Windows, Robocopy fonctionne efficacement pour les fichiers avec sa fonctionnalité mirroir.
249 28 Pierre Labrie
<pre>
250 28 Pierre Labrie
Robocopy /path/to/redmine/files /path/to/backup/files /MIR
251 28 Pierre Labrie
</pre>
252 28 Pierre Labrie
253 12 yannick quenec'hdu
254 1 Fabrice Phung
h2. Notes à propos de l'installation sur Windows
255 10 yannick quenec'hdu
256 1 Fabrice Phung
Récupérer et installer  rubyinstaller depuis le site http://rubyforge.org. Depuis le menu démarrer, exécuter la console @cmd@ 
257 10 yannick quenec'hdu
258 1 Fabrice Phung
Depuis la console les commandes suivantes :
259 10 yannick quenec'hdu
260 10 yannick quenec'hdu
<pre>
261 10 yannick quenec'hdu
RAILS_ENV=production rake db:migrate
262 10 yannick quenec'hdu
RAILS_ENV=production rake redmine:load_default_data
263 1 Fabrice Phung
</pre>
264 10 yannick quenec'hdu
265 1 Fabrice Phung
Doivent être changées par les commandes suivantes :
266 10 yannick quenec'hdu
267 10 yannick quenec'hdu
<pre>
268 10 yannick quenec'hdu
set RAILS_ENV=production
269 10 yannick quenec'hdu
rake db:migrate
270 10 yannick quenec'hdu
rake redmine:load_default_data
271 1 Fabrice Phung
</pre>  
272 10 yannick quenec'hdu
273 1 Fabrice Phung
Vous pouvez avoir besoin d'installer mysql gem, avec la commande
274 1 Fabrice Phung
275 10 yannick quenec'hdu
<pre>
276 1 Fabrice Phung
gem install mysql
277 10 yannick quenec'hdu
</pre>
278 10 yannick quenec'hdu
279 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.
280 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
281 10 yannick quenec'hdu
282 10 yannick quenec'hdu
h3. Les Problèmes avec MySQL 5.1 et Rails 2.2+
283 10 yannick quenec'hdu
284 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 :
285 10 yannick quenec'hdu
286 10 yannick quenec'hdu
Télécharger le fichier DLL depuis le projet InstantRails:
287 10 yannick quenec'hdu
288 10 yannick quenec'hdu
http://instantrails.rubyforge.org/svn/trunk/InstantRails-win/InstantRails/mysql/bin/libmySQL.dll
289 10 yannick quenec'hdu
290 10 yannick quenec'hdu
Copier ce fichier dans le répertoire  \Ruby\bin directory et essayer d'effectuer une nouvelle fois votre commande rake.
291 21 Ame Nomade
292 10 yannick quenec'hdu
h2. Alternative à l'installation manuelle 
293 10 yannick quenec'hdu
294 1 Fabrice Phung
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]].