文章目錄
- 系統基礎:
- 安裝ruby,rubygems
- 安裝 rails
- 安裝 rack
- 安裝資料庫支援
版本曆史:
[V0.9.2.20120102][更新,適用於redmine 1.3.0]
[V0.9.1.20111021][初始化安裝,基於redmine 1.2.2]
準備工作:系統基礎:
作業系統: CentOS 5.7,更新至 20120102。
由於yum安裝的ruby 是 1.8.5版本,但是 redmine 需要的 ruby 版本是 1.8.6 或者 1.8.7,所以如果系統安裝了 ruby 相關的東東,建議先卸載。
我只安裝了 ruby 和 rubygems ,可以按如下卸載(全部卸載可以用 ruby*,要注意卸載 ruby 會導致 yum 安裝的 cacti 和 rrdtool被卸載)
sudo yum erase ruby rubygems
安裝一些 ruby 要用到的基礎依賴包:
sudo yum install -y gcc-c++ patch readline readline-devel zlib zlib-devel libyaml-devel libffi-devel \\
openssl-devel make bzip2 autoconf automake libtool bison iconv-devel
以方便我們編譯安裝 ruby。
安裝ruby,rubygems
1.安裝ruby
在 ftp://ftp.ruby-lang.org/pub/ruby/ 下載 ruby 1.8.7-p352 版本。
編譯安裝
cd ruby-1.8.7.pXXX./configuremakesudo make installruby -v
預設情況下,編譯產生的 ruby 在 /usr/local/bin ,這個要特別注意,可能需要把 /usr/local加入到使用者的PATH中。
2.安裝rubygems
在 http://rubyforge.org/frs/?group_id=126&release_id=46340 上下載 rubygems 1.3.7 版本的安裝包(這裡要注意,千萬不能使用最新的版本,比如 1.8.12,如果使用 1.8.12 那麼在下面的步驟會報錯)。
參考 http://rubygems.org/pages/download 進行安裝,切換到 rubygems 目錄執行
[gaohu@localhost rubygems-1.3.7]$ sudo ruby setup.rb
RubyGems 1.3.7 installed
...
RubyGems installed the following executables:
/usr/local/bin/gem
[gaohu@localhost rubygems-1.3.7]$
安裝 rails
1.首先,要說的是,正常途徑的
[gaohu@rzgh ~]$ sudo gem install rails -v=2.3.14
基本上會報錯:
ERROR: http://gems.rubyforge.org/ does not appear to be a repositoryERROR: could not find gem rails locally or in a repository
也嘗試了增加 ruby的源,發現效果都不好,只能自己手工下載了。
據說地址被牆了,所以我們使用本地安裝的方式來安裝。
2.下載rails
在 http://rubygems.org/pages/download 下載 rails 的gem包(主要版本,一定要下載 2.3.14 版本的),同時遞迴下載依賴包,也要下載對應的版本。
(或者可以使用 Bundler 來處理,自行研究。)
大概會得到不少,都存到一個檔案夾中。建議建立立一個檔案夾 redmine,我們還有很多包要下載。
我大概下載了這些,才把 rails 裝上(下面是所有安裝完的包,這一步用不到這麼多,就按照軟體依賴下載就可以了)
[gaohu@rzgh redmine]$ lsactionmailer-2.3.14.gem activeresource-2.3.14.gem fastthread-1.0.7.gem mysql-2.8.1.gem rails-2.3.14.gem
rubygems-update-1.8.12.gem
actionpack-2.3.14.gem activesupport-2.3.14.gem fcgi-0.8.8.gem passenger-3.0.11.gem rake-0.8.7.gem
activerecord-2.3.14.gem daemon_controller-0.2.6.gem i18n-0.4.2.gem rack-1.1.1.gem
3.安裝 rails
[gaohu@localhost redmine]$ sudo gem install --local rails-2.3.14.gem
Successfully installed rake-0.8.7
Successfully installed activesupport-2.3.14
Successfully installed activerecord-2.3.14
Successfully installed rack-1.1.1
Successfully installed actionpack-2.3.14
Successfully installed actionmailer-2.3.14
Successfully installed activeresource-2.3.14
Successfully installed rails-2.3.14
8 gems installed
Installing ri documentation for rake-0.8.7...
Installing ri documentation for activesupport-2.3.14...
Installing ri documentation for activerecord-2.3.14...
Installing ri documentation for rack-1.1.1...
Installing ri documentation for actionpack-2.3.14...
Installing ri documentation for actionmailer-2.3.14...
Installing ri documentation for activeresource-2.3.14...
Installing ri documentation for rails-2.3.14...
Installing RDoc documentation for rake-0.8.7...
Installing RDoc documentation for activesupport-2.3.14...
Installing RDoc documentation for activerecord-2.3.14...
Installing RDoc documentation for rack-1.1.1...
Installing RDoc documentation for actionpack-2.3.14...
Installing RDoc documentation for actionmailer-2.3.14...
Installing RDoc documentation for activeresource-2.3.14...
Installing RDoc documentation for rails-2.3.14...
[gaohu@rzgh redmine]$
(這一步列出的包,應該就是 rails的依賴了。)
rails 安裝完成。
安裝 rack
下載,rack 1.1.1版本的
[gaohu@localhost redmine]$ sudo gem install --local rack-1.1.1.gemSuccessfully installed rack-1.1.11 gem installedInstalling ri documentation for rack-1.1.1...Installing RDoc documentation for rack-1.1.1...[gaohu@localhost redmine]$
安裝資料庫支援
我選擇 mysql,還可以選擇其他的資料庫
下載 ruby 的 mysql gem,安裝
[gaohu@rzgh redmine]$ sudo gem install --local mysql-2.8.1.gem Building native extensions. This could take a while...Successfully installed mysql-2.8.11 gem installedInstalling ri documentation for mysql-2.8.1...No definition for next_result...No definition for error_sqlstate[gaohu@rzgh redmine]$
報了一堆錯,不知道有沒有影響,等下看。
安裝 redmine
1.建立資料庫
create database redmine character set utf8;create user 'redmine'@'localhost' identified by 'my_password';grant all privileges on redmine.* to 'redmine'@'localhost';
2.下載 redmine 解壓redmine 到 httpd 伺服器檔案夾位置,對於我的,
[gaohu@rzgh ~]$ cd /var/www/html[gaohu@rzgh html]$ sudo mv /home/gaohu/redmine-1.2.2 ./[gaohu@rzgh html]$ sudo mv redmine-1.2.2/ redmine
3.編輯database.yml 檔案
[gaohu@rzgh redmine]$ sudo cp config/database.yml.example config/database.yml[gaohu@rzgh redmine]$ sudo vi config/database.yml
調整生產資料庫的資料庫和密碼:
production: adapter: mysql database: redmine host: localhost username: redmine password: my_password
這裡密碼前,一定要記得冒號後一個空格,否則 sudo RAILS_ENV=production rake db:migrate 會報錯
[gaohu@rzgh redmine]$ sudo RAILS_ENV=production rake db:migrateNOTE: SourceIndex.new(hash) is deprecated; From /var/www/html/redmine/config/../vendor/rails/railties/lib/rails/vendor_gem_source_index.rb:100:in `new'.WARNING: 'require 'rake/rdoctask'' is deprecated. Please use 'require 'rdoc/task' (in RDoc 2.4.2+)' instead. at /usr/local/lib/ruby/gems/1.8/gems/rake-0.9.2.2/lib/rake/rdoctask.rbWARNING: 'task :t, arg, :needs => [deps]' is deprecated. Please use 'task :t, [args] => [deps]' instead. at /var/www/html/redmine/lib/tasks/email.rake:170rake aborted!syntax error on line 8, col 2: ` encoding: utf8'Tasks: TOP => db:migrate => environment(See full trace by running task with --trace)
4.產生會話儲存
[gaohu@localhost redmine-1.3.0]$ sudo rake generate_session_store
(in /usr/local/share/redmine-1.3.0)
Please install RDoc 2.4.2+ to generate documentation.
開始安裝 rdoc(這時建議一併把 i18n 0.4.2 給裝上)。下載 rdoc及依賴
[gaohu@localhost redmine]$ sudo gem install --local rdoc-2.5.3.gem
Successfully installed rdoc-2.5.3
1 gem installed
Installing ri documentation for rdoc-2.5.3...
Installing RDoc documentation for rdoc-2.5.3...
[gaohu@localhost redmine]$ sudo gem install --local rdoc-data-2.5.3.gem
To install ri data for RDoc 2.5+ run:
rdoc-data
Successfully installed rdoc-data-2.5.3
1 gem installed
Installing ri documentation for rdoc-data-2.5.3...
Installing RDoc documentation for rdoc-data-2.5.3...
[gaohu@localhost redmine]$ sudo rdoc-data --install
重新執行
[gaohu@localhost redmine-1.3.0]$ sudo rake generate_session_store
(in /usr/local/share/redmine-1.3.0)
5.建立資料庫結構,在 redmine 路徑下執行
[gaohu@localhost redmine-1.3.0]$ sudo RAILS_ENV=production rake db:migrate
6.插入預設資料
[gaohu@localhost redmine-1.3.0]$ sudo RAILS_ENV=production rake redmine:load_default_data
(in /usr/local/share/redmine-1.3.0)
Select language: bg, bs, ca, cs, da, de, el, en, en-GB, es, eu, fa, fi, fr, gl, he, hr, hu, id, it, ja, ko, lt, lv, mk, mn, nl, no, pl, pt, pt-BR, ro, ru, sk, sl, sr, sr-YU, sv, th, tr, uk, vi, zh, zh-TW [en]
====================================
Default configuration data loaded.
7.設定許可權
[gaohu@localhost redmine-1.3.0]$ sudo mkdir tmp public/plugin_assets
mkdir: cannot create directory `tmp': File exists
mkdir: cannot create directory `public/plugin_assets': File exists
[gaohu@localhost redmine-1.3.0]$ sudo chown -R redmine:redmine files log tmp public/plugin_assets
chown: `redmine:redmine': invalid user
[gaohu@localhost redmine-1.3.0]$ sudo chown -R apache:apache files log tmp public/plugin_assets
[gaohu@localhost redmine-1.3.0]$ sudo chmod -R 755 files log tmp public/plugin_assets
8.通過 WEBrick web server 測試安裝
[gaohu@localhost redmine-1.3.0]$ sudo ruby script/server webrick -e production
=> Booting WEBrick
=> Rails 2.3.14 application starting on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2012-01-03 00:16:50] INFO WEBrick 1.3.1
[2012-01-03 00:16:50] INFO ruby 1.8.7 (2011-12-28) [i686-linux]
[2012-01-03 00:16:55] INFO WEBrick::HTTPServer#start: pid=18704 port=3000
訪問伺服器 http://localhost:3000 連接埠測試。
9.Use default administrator account to log in:
- login: admin
- password: admin
You can go to Admin & Settings
to modify application settings.
與 apache 整合
《待補充》
參考:
http://www.redmine.org/projects/redmine/wiki/RedmineInstall
附錄:
1.如果使用了高版本的 rubygems(比如 1.8.12),那麼執行如下命令時會報錯
.[gaohu@localhost redmine-1.3.0]$ sudo rake generate_session_store
(in /usr/local/share/redmine-1.3.0)
NOTE: Gem.source_index is deprecated, use Specification. It will be removed on or after 2011-11-01.
Gem.source_index called from /usr/local/share/redmine-1.3.0/config/../vendor/rails/railties/lib/rails/gem_dependency.rb:21.
rake aborted!
uninitialized constant Gem::SyckDefaultKey
/usr/local/share/redmine-1.3.0/Rakefile:4
(See full trace by running task with --trace)
解決辦法:降級,可以降級到 1.3.7版本。
參考:http://www.redmine.org/boards/2/topics/27792
http://www.redmine.org/boards/2/topics/27928
2
3
4