Project

General

Profile

RusRedmineInstall » History » Version 5

Andrey Polyakov, 2011-08-05 11:10

1 2 Ruslan Khasanov
[[RusGuide|Руководство]]->[[RusInstallation_guide|Руководство по установке]]
2
3 4 Ruslan Khasanov
Оригинал: [[RedmineInstall|Installing Redmine v.118]]
4
5 5 Andrey Polyakov
h1. Установка Redmine
6 1 Ruslan Khasanov
7
{{>toc}}
8
9 5 Andrey Polyakov
h2. Требования
10 1 Ruslan Khasanov
11 5 Andrey Polyakov
h3. Операционная система
12 1 Ruslan Khasanov
13 5 Andrey Polyakov
Redmine должен работать на Unix, Linux, [[RedmineInstallOSX|Mac]], [[RedmineInstallOSXServer|Mac Server]] and Windows поскольку Ruby доступен для этих платформ. Конкретные инструкции доступны здесь [[RusHowTos|тут]].
14
15
h3. Ruby & Ruby on Rails & Rack
16
|Redmine version|Supported 
17
                 Ruby versions      |Required
18
                                     Rails version  |Required
19
                                                     Rack version |
20
|текущий
21
 транк          |/9.ruby 1.8.6,1.8.7|Rails 2.3.11   |Rack 1.1.1   |
22
|транк с
23
 r2887 по r4903                     |Rails 2.3.5    |Rack 1.0.1   |  
24
|транк с
25
 r2493 по r2286                     |Rails 2.2.2    |             |
26
|транк до r2493                     |Rails 2.1.2    |             |
27
|1.2.x                              |Rails 2.3.11   |Rack 1.1.1   |
28
|1.1.x                              |/3. Rails 2.3.5|/3.Rack 1.0.1|
29
|1.0.x                              |
30
|0.9.x                              |
31
|0.8.x                              |Rails 2.1.2    |             |
32
33
34 1 Ruslan Khasanov
Официальный релиз включает соответствующую версию Rails в директории vendor. Поэтому обычно дополнительных действий не требуется.
35
Если вы устанавливаете Redmine из хранилища, вы можете установить конкретную версию Rails на вашем компьютере выполнив:
36
37
<pre>
38 5 Andrey Polyakov
gem install rails -v=2.3.11
39 1 Ruslan Khasanov
</pre>
40
41
Установка Rack:
42
43
<pre>
44 5 Andrey Polyakov
gem install rack -v=1.1.0
45 1 Ruslan Khasanov
</pre>
46
47 5 Andrey Polyakov
h3. Примечания о совместимости:
48 1 Ruslan Khasanov
49 5 Andrey Polyakov
* *Ruby 1.9 пока не поддерживается.* Вы должны использовать Ruby 1.8.x, как указано выше.
50
* Требуется RubyGems 1.3.7 или выше со следующими ограничениями:
51
** *Rails 2.3.5 не будет работать с RubyGems 1.5.0 и выше*, придерживайтесь предыдущих версий RubyGems
52
** *Rails 2.3.11 не будет работать с RubyGems 1.7.0 и выше*, придерживайтесь предыдущих версий RubyGems
53
* *Требуется Rake 0.8.7* (Rails пока не поддерживает rake 0.9.x)
54
* *Требуется Rack 1.1.x*, 1.1.0 содержит ошибку с кавычками(#8416). Миграция базы данных не будет работать с другими версиями.
55
* *Mongrel 1.1.5 требует патча* прикреплённого к #7688 для нормальной работы с Rails 2.3.11. В случае обновления другие ошибки могут появляется после миграции (#7857).
56
* I18n 0.4.2 требуется для Redmine >= 1.0.5
57
58
h3. База данных
59
60
* MySQL 5.0 и выше (рекомендуется)
61
** установите C биндинги для Ruby, которые существенно улучшают производительность. Вы можете получить их запустив @gem install mysql@. Если у вас возникают проблемы с установкой mysql гема обратитесь к "Rails Wiki pages":http://wiki.rubyonrails.org/database-support/mysql
62
63
* PostgresSQL
64
** убедитесь, что ваш стиль даты установлен в ISO (настройка по-умолчанию для Postgres). Вы можете установить ее используя: @ALTER DATABASE "redmine_db" SET datestyle="ISO,MDY";@
65
** некоторые ошибки в PostgreSQL 8.4.0 и 8.4.1 вызывают ошибки в Redmine(#4259, #4314), они исправлены в PostgreSQL 8.4.2
66
** установите PostgreSQL адаптер для Ruby. Вы можете получить его, запустив(выберите *один* вариант из списка):
67
*** @gem install postgres-pr@ (нативная Ruby реализация больше активно не сопровождается автором, вызывает "ошибки":https://github.com/mneumann/postgres-pr/issues#issue/4 с 9.x)
68
*** @gem install pg@ (работает с SSL подключениями, может требовать пакетов/библиотек разработчика для вашей ОС для компиляции)
69
**** Ubuntu: библиотеки разработчика могут быть установлены с помощью: @sudo aptitude install libdbd-pg-ruby1.8@
70
* SQLite 3
71
72 1 Ruslan Khasanov
h3. Опционально
73
74 5 Andrey Polyakov
* Бинарники системы управления версиями (SCM) (например svn), для просмотра хранилища(должны быть доступны в PATH). Прочитайте[[RusRedmineRepositories|хранилища Redmine]] для получения информации о совместимости и требованиях.
75 1 Ruslan Khasanov
* "RMagick":http://rmagick.rubyforge.org (чтобы включить возможность экспорта диаграммы Ганта в png изображение)
76
* "Ruby OpenID Library":http://openidenabled.com/ruby-openid/ (чтобы активировать поддержку OpenID) [только в Redmine trunk / 0.9-dev] Требуется версия 2 или выше.
77
78
h2. Версии Redmine
79
80 5 Andrey Polyakov
Большинству пользователей рекомендуется устанавливать последние версии релизов Redmine. В настроящее время новые версии Redmine выпускаются каждые 6 месяцев, эти релизы считаются стабильными и пригодными к использованияю. Не рекомендуется устанавливать Redmine из trunc репозитария, пока если вы глубоко не изучите Ruby On Rails и не сможете идти в ногу с изменениями - время от времени транк ломается.
81 1 Ruslan Khasanov
82
h2. Установка
83
84 5 Andrey Polyakov
# Получите исходный код Redmine, загрузив упакованный релиз или получив код из хранилища. См. [[Download]].
85
# Создайте пустую базу данных и сопутствующих пользователя, например, с именем @redmine@.
86 1 Ruslan Khasanov
Для MySQL:
87
<pre><code class="sql">
88
create database redmine character set utf8; 
89
create user 'redmine'@'localhost' identified by 'my_password'; 
90 3 Ruslan Khasanov
grant all privileges on redmine.* to 'redmine'@'localhost';
91 1 Ruslan Khasanov
</code></pre>
92 5 Andrey Polyakov
Для версий MySQL до 5.0.2 вмести @create user@ используйте:
93
<pre><code class="sql">
94
grant all privileges on redmine.* to 'redmine'@'localhost' identified by 'my_password';
95
</code></pre>
96
Для PostgreSQL:
97
<pre><code class="sql">
98
CREATE ROLE redmine LOGIN ENCRYPTED PASSWORD 'my_password' NOINHERIT VALID UNTIL 'infinity';
99
CREATE DATABASE redmine WITH ENCODING='UTF8' OWNER=redmine;
100
</code></pre>
101
# Скопировать config/database.yml.example в config/database.yml и отредактировать этот файл для того, чтобы настроить параметры базы данных для "production(реальное окружения, используемое для работы)" окружения.
102 1 Ruslan Khasanov
Пример для базы данных MySQL:
103
<pre>
104
production: 
105 5 Andrey Polyakov
 adapter: mysql 
106
 database: redmine 
107
 host: localhost 
108
 username: redmine 
109
 password: my_password
110 1 Ruslan Khasanov
</pre>
111
Если ваш сервер не работает со стандартным портом (3306), используйте эту конфигурацию:
112
<pre>
113
production: 
114 5 Andrey Polyakov
  adapter: mysql 
115
  database: redmine 
116
  host: localhost 
117
  port: 3307
118
  username: redmine 
119
  password: my_password
120 1 Ruslan Khasanov
</pre>
121 5 Andrey Polyakov
Пример для PostgreSQL (порт по-умолчанию):
122 1 Ruslan Khasanov
<pre>
123 5 Andrey Polyakov
production:
124
  adapter: postgresql
125
  database: <your_database_name>
126
  host: <postgres_host>
127
  username: <postgres_user>
128
  password: <postgres_user_password>
129
  encoding: utf8
130
  schema_search_path: <database_schema> (default - public)
131
</pre>
132
# Генерация ключа для безопасного хранения сессий
133
<pre>
134 1 Ruslan Khasanov
rake generate_session_store
135
</pre>
136 4 Ruslan Khasanov
# Создайте структуру базы данных, выполнив следующую команду в корневом каталоге приложения:
137
<pre>
138
RAILS_ENV=production rake db:migrate
139
</pre>
140
Это создаст таблицы и учетную запись администратора
141
Если вы получите вот такую ошибку:
142 1 Ruslan Khasanov
<pre>
143
Rake aborted!
144
no such file to load -- net/https
145
</pre>
146 5 Andrey Polyakov
вам необходимо установить libopenssl-ruby1.8, в Ubuntu выполните: @apt-get install libopenssl-ruby1.8@
147 1 Ruslan Khasanov
# Установите в базу данных конфигурацию по умолчанию, выполнив следующую команду:
148 4 Ruslan Khasanov
<pre>
149 1 Ruslan Khasanov
RAILS_ENV=production rake redmine:load_default_data
150
</pre>
151 5 Andrey Polyakov
Этот шаг является необязательным, *но строго рекомендуется к выполнению*, также вы можете создать свою собственныю конфигурацию с нуля. Будут загружены роли, трекеры, статусы, рабочие процессы и перечисления по-умолчанию
152 1 Ruslan Khasanov
# Настройка разрешений
153
_Пользователи Windows могут пропустить этот шаг._
154
Пользователь, который запускает Redmine должны иметь разрешение на запись в следующие подкаталоги:  files , log , tmp  (создайте последний, если его нет).
155
Предполагается, что вы запустили Redmine от пользователя redmine:
156
<pre>
157
mkdir tmp public/plugin_assets
158
sudo chown -R redmine:redmine files log tmp public/plugin_assets
159
sudo chmod -R 755 files log tmp public/plugin_assets
160
</pre>
161
# Протестируйте установку путем запуска веб-сервера WEBrick:
162 4 Ruslan Khasanov
<pre>
163
ruby script/server webrick -e production
164 1 Ruslan Khasanov
</pre>
165
После старта WEBrick, откройте в браузере http://localhost:3000/. Теперь вы должны увидеть страницу приветствия приложения.
166 5 Andrey Polyakov
>Примечание: Webrick не подходит для нормальной эксплуатации, пожалуйста, используйте WEBrick только для тестирования.
167 1 Ruslan Khasanov
# Используйте учетную запись администратора по умолчанию, чтобы войти:
168
* Логин: admin
169
* Пароль: admin
170 5 Andrey Polyakov
Теперь вы можете посетить раздел _Admin&Settings_(Администрирование) для изменения настроек приложения.
171 1 Ruslan Khasanov
172
h2. Конфигурация логирования
173
174
По умолчанию в Redmine уровень журналирования :info (информация). В зависимости от использования сайта, лог может сильно вырасти. Чтобы это избежать, необходимо его ротировать, либо с помощью системной утилиты Logrotate, либо через файл Config/additional_environment.rb.
175
176
Для использования последнего, необходимо скопировать config/additional_environment.rb.example в config/additional_environment.rb и в нем добавить следующие строки. Отметим, что по умолчанию в файле установлен высокий уровнь журналирования, следовательно, должен быть явно установлен в информацию.
177
<pre><code class="ruby">
178
#Logger.new(PATH,NUM_FILES_TO_ROTATE,FILE_SIZE)
179
config.logger = Logger.new(config.log_path, 2, 1000000)
180
config.logger.level = Logger::INFO
181
</code></pre>
182
183
h2. Конфигурирование SMTP-сервера
184
185
Скопировать config/email.yml.example в config/email.yml и отредактировать этот файл.
186
См. пример [[Настройка почты]]
187
Не забудьте перезапустить приложение после любого изменения.
188
189
h2. Резервное копирование
190
191
Копии Redmine должны включать:
192
* данные (хранящиеся в базе данных Redmine)
193
* вложения (хранится в директории files вашей установки Redmine)
194
195
Вот простой скрипт, который может быть использован для создания ежедневных резервных копий (если вы используете базу данных MySQL):
196
<pre>
197
# База данных 
198
/usr/bin/mysqldump -u <username> -p<password> <redmine_database> | gzip > /path/to/backup/db/redmine_`date +%y_%m_%d`.gz 
199
200
# Вложения 
201
rsync -a /path/to/redmine/files /path/to/backup/files
202
</pre>