在 Windows 上安裝 Redmine 2.3.0 的筆記

Redmine 是一套很有名的專案管理系統,建構於 Ruby on Rails 之上。網路上搜尋「Redmine」都可以找到很多相關資料,這邊就不贅述功能。

由於 Ruby/Rails 在 MacOSX 跟 Linux 相對比較友善,所以要找 Redmine on Windows 的安裝教學實在不太好找,中文資料更是寥寥可數。加上 Rails 進步迅速,很多 07~09 年的資料其實很可能都已經過時,所以乾脆自己研究完寫一篇XD

不過由於現在實在沒什麼空寫網誌,所以簡單的把方法跟過程記錄一下….

這邊主要是根據 http://www.redmine.org/projects/redmine/wiki/RedmineInstall 上面的說明,而 Redmine 安裝相依於特定的 rails 與 ruby 版本,可以參考前面這個連結裡面的表格。而我這邊以 Ruby 1.9.3 + Rails 3.2.13 + Redmine 2.3.0 為目標。

以下為安裝步驟:(注意!安裝過程中的路徑最好都不要有中文,如果出現奇怪的問題,請先嘗試把目錄或檔案放到沒有中文路徑的位置。目前我已經碰到某些 gem file 放在中文路徑會沒辦法安裝)

  1. 下載 Ruby installer 與 Development Kit (這邊我都選 32-bit 版本)
    http://rubyinstaller.org/downloads
  2. 下載 Redmine (點第一段的 RubyForge 連結)
    http://www.redmine.org/projects/redmine/wiki/Download
  3. 安裝 Ruby
    雙擊 ruby installer 並一直 Next,注意中途應選擇「Add Ruby executables to your PATH」
  4. 安裝 Development Kit
    將 Development Kit 解壓縮到 C:\Ruby193\DevKit,並打開命令提示字元執行以下指令
    ruby C:\Ruby193\DevKit\dk.rb init  
    ruby C:\Ruby193\DevKit\dk.rb install  
    
  5. 解壓縮 Redmine 至特定目錄,在此以 $REDMINE 表示
  6. 進入 $REDMINE\config\ 目錄中,複製 database.yml.example 至 database.yml
  7. 根據自己的環境,設定 database.yml
    在此我打算使用 SQLite3 作為 production (雖然官方不建議),所以只需要很簡單的3行
    production:  
      adapter: sqlite3  
      database: db/redmine.sqlite3  
    
  8. 安裝相依 gems
    cd $REDMINE  
    gem install bundler  
    bundle install --without development test rmagick # rmagick 還需要額外安裝其他東西,乾脆就先不用了  
    
  9. 設定 Redmine
    set RAILS_ENV=production  
    rake generate_secret_token  
    rake db:migrate  
    rake redmine:load_default_data  
    ruby script/rails server webrick -e production  
    
  10. 到這裡,Redmine server 應該已經 run 起來了,連上 http://localhost:3000/ 看看吧!

通常應該這樣就結束了,但是發現某些文章提到用 mongrel,他似乎也是個 ruby 寫的 web server 吧….查了一下資料發現,有個更新的東西叫做 thin,根據 thin 的說法,它用了 mongrel parser….然後效能比 mongrel 好…..哎呀反正我也不太懂,反正試試看就對了XD

安裝 thin 很簡單:

gem install thin  

執行則是:

thin start  

結果竟然跑不起來?找了一些資料才發現,原來要加上 Gemflie.local 才行….反正結論是,應該這樣安裝

  1. 先編輯 $REDMINE\Gemfile.local
    gem 'thin'
    
  2. 執行以下指令
    bundle install  
    thin start  
    

最後來個番外篇…如果想把相關檔案全都抓下來,拿到一台沒有網路的電腦安裝,應該怎麼做呢?可以透過 bundle 幫我們做這件事!
$REDMINE 下,執行 bundle package,就可以在 $REDMINE\vender\cache\ 裡面找到目前配置下所需的所有 gems,但有趣的是,bundler 自己不在裡面…..XD 要找到 bundler 的 gem 的話,可以去 C:\Ruby193\lib\ruby\gems\1.9.1\cache\ 裡面撈…找到 bundle 與 bundler 這兩個 gem,直接複製即可。(別問我,我不曉得這兩個分別是幹嘛的….)
另外,我們還得偷帶走 $REDMINE\Gemfile.lock 這個檔案,這樣 bundle 才能在沒有網路連線的情況下,了解 gems 之間的相依性。既然都拿 Gemfile.lock 了,那剛剛安裝 thin 用的 Gemfile.local 也順便帶走吧!所以,想要離線安裝,先準備好以下這些檔案

  • Ruby Installer
  • Development Kit
  • Redmine
  • 挖出來的 gems (包含 bundler, bundle, 以及 bundle package 產生的那些)
  • Gemfile.localGemfile.lock

然後根據以下步驟安裝

  1. 進行上面一般安裝步驟的第 3~7 步

  2. 安裝 gems (假設我把檔案放在 C:\Ruby193\gems.local)

    cd C:\Ruby193\gems.local  
    gem install -l *  
    
  3. Gemfile.localGemfile.lock 丟回 $REDMINE

  4. 執行以下指令

    cd $REDMINE  
    bundle install --without development test rmagick --local
    
  5. 進行一般安裝步驟第 9 步

  6. 完成!

希望上面的筆記也可以對其他人有幫助…..

好啦我知道這篇文章排版很糟糕…但我實在沒空調整了orz 再抱怨一次 Blogger 的寫文章介面實在不太好用 :(


Last modified on 2013-04-07