Skip to content
February 21, 2013 / windperson

安裝Redmine v2.2.x在64位元Windows環境

一年多以前有在Windows Server上裝過Redmine v1.x,那個時候得自己找一堆Ruby Library還有各個版本相容的問題,相當煩人,現在Redmine v2.2使用一個叫Bundler的套件管理工具來安裝,整個就方便不少,以下是安裝步驟。

準備材料:

  1. Ruby v1.9.3-p374
    下載安裝檔
  2. Ruby Devkit v4.5.2-20111229-1559
    下載自解壓縮檔
  3. MySQL Community Server v5.5.3 (64bit)
    此網址下載,64bit或32bit皆可
  4. MySQL Connector/C version 6.0.2
    下載Zip壓縮檔
  5. NSSM
    此網址下載
  6. ImageMagick-6.8.0-8-Q16-windows-dll.exe
    此網址下載該檔案,注意,一定是要此版本32位元的,更新版號的安裝檔目前會造成安裝失敗!
  7. Redmine v2.2.x
    可至官方網站下載或是用原始碼管理系統下載均可。

安裝步驟:

  1. 安裝MySQL:

    1. 執行MySQL安裝檔進行安裝,安裝完畢後的初始化設定精靈中,Database的Encoding選UTF-8,並勾選將MySQL執行檔加到Path環境變數的選項。
    2. 打開MySQL command line,執行

      mysql -u root -p
      

      輸入root的密碼登入mysql的command line後,依序執行下列指令:

      create database redmine character set utf8;
      create user 'redmine'@'localhost' identified by 'my_password';
      grant all privileges on redmine.* to 'redmine'@'localhost';
      

      my_password 請替換成自訂的密碼。

  2. 安裝Ruby執行環境

    1. 安裝Ruby v1.9.3-p374安裝檔,安裝時要勾選Add Ruby executables to your PATH
    2. 安裝Ruby devkit
      步驟如下(可參考官方wiki說明)

      1. 將Ruby Devkit v4.5.2-20111229-1559解壓縮在一個空白目錄,例如C:\devkit。
      2. 開啟位於開始功能表之中的Ruby命令列捷徑,在該命令列中切換工作目錄到C:\devkit,執行下列命令:

        ruby dk.rb init
        ruby dk.rb install
        

        執行完後關閉該Ruby console。

  3. 安裝ImageMagick
    仿照官方說明進行安裝,執行前面下載的ImageMagic安裝檔(ImageMagick-6.8.0-8-Q16-windows-dll.exe)進行安裝,勾選Add application directory to your system path Install development headers and libraries for C and C++,安裝路徑選擇空白字元的路徑,例如C:\ImageMagick-6.8.0-Q16。
  4. 將下載的Redmine解壓縮到預定的位置,例如D:\Redmine。
  5. 用文字編輯軟體在Redmine安裝目錄內建立一個Gemfile.local文字檔案,內容為:

    gem "thin"
    
  6. 執行位於開始功能表項目內的Ruby命令列捷徑,開啟Ruby Console,先切換到Ruby Devkit的目錄下,執行devkitvars.bat。
  7. 然後再設定CPATHLIBRARY_PATH系統變數,在剛剛還沒關掉的Ruby Console執行下列兩個命令:

    set CPATH=C:\ImageMagick-6.7.7-Q16\include
    set LIBRARY_PATH=C:\ImageMagick-6.7.7-Q16\lib
    
  8. 切換到Redmine下載的目錄下,執行:

    gem install rmagick
    

    此時會跑比較久,因為要編譯原生windows平台模組的關係,如果有看到下列顯示:

    Successfully installed rmagick-2.13.2
    1 gem installed
    

    就表示rmagick有安裝成功。

  9. 在Ruby Console執行:

    bundle install --without=development test
    

    開始自動安裝相關Library,一直等到有顯示

    Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem
    is installed.
    Post-install message from rdoc:
    Depending on your version of ruby, you may need to install ruby rdoc/ri data:
    
    = 1.9.2 : nothing to do! Yay!
    Post-install message from mysql2:
    
    ======================================================================================================
    
      You've installed the binary version of mysql2.
      It was built using MySQL Connector/C version 6.0.2.
      It's recommended to use the exact same version to avoid potential issues.
    
      At the time of building this gem, the necessary DLL files where available
      in the following download:
    
      http://dev.mysql.com/get/Downloads/Connector-C/mysql-connector-c-noinstall-6.0.2-win32.zip/from/pick
    
      And put lib\libmysql.dll file in your Ruby bin directory, for example C:\Ruby\
    bin
    
    ======================================================================================================
    

    就表示bundle的安裝程序已經成功。

  10. 將之前下載的MySQL Connector/C version 6.0.2 (libmySQL.dll)複製到Ruby安裝目錄的子目錄bin內。
  11. 將Redmine目錄下子目錄config裡的database.yml.example複製一份,改名成database.yml,並修改其”production”區段的內容:

    production:
      adapter: mysql2
      database: redmine
      host: localhost
      username: redmine
      password: [自訂的密碼]
      encoding: utf8
    
  12. 繼續在Ruby Console下執行:

    set RAILS_ENV=production
    rake db:migrate
    rake redmine:load_default_data
    

    途中提示輸入語系時,可直接按Enter接受預設值(en)即可。

  13. 將nssm解壓縮至一個自訂目錄位置後,命令列視窗切換到該目錄下,執行:

    nssm install [Service名稱]
    

    [Service名稱]可自行決定,此時出現的視窗,第一個Application欄位指定成位在Ruby安裝目錄的子目錄bin下的ruby.exe,然後按下方的Install Service按鈕。

  14. 執行regedit.exe,在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\[Service名稱]\Parameters這個機碼(key)內,設定內含的其三個字串(string)的名稱和值如下:

    AppDirectory  : [Redmine目錄位置]
    Application   : [Ruby安裝目錄的子目錄bin下的ruby.exe位置]
    AppParameters : [Ruby安裝目錄的子目錄bin位置]\thin start -p [埠號] -e production
    
  15. 執行services.msc,將上述以nssm建立的[Service名稱]的系統服務啟動,以瀏覽器開啟網址http://localhost: [ 埠號 ]開始使用。
Advertisements

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: