Redmine 1.4.1 on Windows Server 2003 R2

Windows Server 2003 R2 で運用中の Redmine 1.3.x を Redmine 1.4.1 にアップデートしました。

環境

現在の環境は以下の通りです。
  • Windows Server 2003 R2 (x86)
  • MySQL Community Server 5.1 (5.1.62 GA)
  • Ruby 1.8.7-p357
Redmine 1.4.1 へアップグレード

1. 現在のサービスを削除しておきます。
>net stop redmine
>sc delete redmine

2. redmine-1.4.1.zip をダウンロードし、展開します。

3. 以下のファイルを 1.3.x から 1.4.1へコピーします。
  • config\additional_environment.rb
  • config\database.yml
  • config\configuration.yml
4. インストールしたプラグイン(vendor\plugins\)を 1.3.x から 1.4.1へコピーします。

5. 添付ファイル(files\)を を 1.3.x から 1.4.1へコピーします。

6. bundler をインストールします。
>gem install bundler

7. 必要のないものを除いて gem をインストールします。mysql を使っているのでそれ以外のデーターベースは除きます。rmagick は後から対応するので今はインストールしません。
>bundle install --without development test postgresql sqlite rmagick

8. データベースのアップデートを行います。
>set RAILS_ENV=production
>rake generate_session_store
>rake db:migrate
>rake db:migrate:upgrade_plugin_migrations
>rake db:migrate_plugins
>rake tmp:cache:clear
>rake tmp:sessions:clear

9. プラグインがインストールされているとプロジェクトを開くときに ActionController::RoutingError in XXXXX とエラーが表示されてしまいます。これはプラグインが Redmine 1.4.x に対応していないからなのですが、以下の方法で回避できます。

config/routes.rb の最後の方に map.connect ':controller/:action/:id' を追加します。

  map.connect 'robots.txt', :controller => 'welcome',
              :action => 'robots', :conditions => {:method => :get}

  map.connect ':controller/:action/:id'

  # Used for OpenID
  map.root :controller => 'account', :action => 'login'
end

Webrick を使用して動作を確認します。

>ruby script/server webrick -e production

ウェブブラウザーで http://localhost:3000/ をアクセスし動作を確認します。

RMagick の対応

先のバージョンのインストールで)Windows への RMagick のインストールは済んでいるで bundler で管理できるようにします。

1. (Ruby のインストール先\)lib\ruby\gems\1.8\cache の rmagick-2.12.0-x86-mswin32.gem を rmagick-2.12.0.gem にコピーします。

2. (Ruby のインストール先\)lib\ruby\gems\1.8\gems の rmagick-2.12.0-x86-mswin32 を rmagick-2.12.0 にコピーします。

3. (Ruby のインストール先\)lib\ruby\gems\1.8\specifications の rmagick-2.12.0-x86-mswin32.gemspec を rmagick-2.12.0.gemspec にコピーします。

4. rmagick-2.12.0.gemspec をテキストエディタで編集し s.platform = %q{mswin32} の行を削除します。

5. Gemfile をテキストエディタで編集し、rmagick のバージョンを 2.12.0 に指定します。
group :rmagick do
    # RMagick 2 supports ruby 1.9
    # RMagick 1 would be fine for ruby 1.8 but Bundler does not support
    # different requirements for the same gem on different platforms
    gem "rmagick", "= 2.12.0"
  end

6. bundler で登録します。
>bundle install --without development test postgresql sqlite

以上で Rmagick が Redmine より認識されます。

Redmine サービスのインストール

1. 1.3.x から config/initializers/mongrel.rb をコピーします。

2. 以下の内容を Gemfile.local として保存します。
# Gemfile.local
gem "mongrel"

3. bundler で登録します。
>bundle install --without development test postgresql sqlite

4. サービスを作成します。
>mongrel_rails service::install -N "redmine" -c C:\redmine-1.4.1 -p 4000 -e production

5. サービスを開始します。
>net start redmine

ウェブブラウザーで http://localhost:4000/ をアクセスし、動作を確認します。

以上です。おつかれさまでした。

参考

以下のサイトを参考にしました。

コメント

このブログの人気の投稿

CentOS 6.5 でシリアルポートに接続する方法

バイナリーファイルを C 言語の配列で出力