EC2にRedmine入れて動かした記録

新しいプロジェクトで Rails製のBTSであるRedmineをEC2に導入したので備忘録


作業ログ

事前に AWS の webコンソールから以下の作業を行っておく。

  1. ElasticIP(固定IP) を振る。
  2. SecurityGroup で 80番ポートを開けておく。

% yum install gcc gcc-c++ kernel-devel
% yum install make
% yum install svn
% yum install ruby-devel
% yum install rubygems
% yum install sqlite-devel
% gem install rails -v=2.3.11
% gem install rack -v=1.0.1
% gem install i18n -v=0.4.2
% gem install sqlite3
% mkdir /var/lib/rails
% cd /var/lib/rails
% svn checkout http://redmine.rubyforge.org/svn/branches/1.2-stable
% mv 1.2-stable redmine-1.2
% cd redmine-1.2
% cp config/database.yml.example config/database.yml
% vi config/database.yml
 production 内を
  adapter: sqlite3
  database: db/test.sqlite3
 に変更


% rake config/initializers/session_store.rb

ここでエラー発生


WARNING: 'task :t, arg, :needs => [deps]' is deprecated. Please use 'task :t, [args] => [deps]' instead. at /var/lib/rails/redmine-1.2/lib/tasks/email.rake:170


rake のバージョン下げないとエラーになるので下げる

% gem uninstall rake
% gem install rake -v=0.8.7

引き続き

% rake config/initializers/session_store.rb
% rake db:migrate RAILS_ENV="production"
% rake redmine:load_default_data RAILS_ENV="production"
% RAILS_ENV=production ./script/server -p 80


先ほど振った固定IPでアクセスできたら成功!


※追記
この状態だと、ターミナル落としたら WEBrick 落ちちゃってアクセスできないので、デーモン化する。

% gem install mongrel
して
RAILS_ENV=production ./script/server -d -p 80
でOK

止める場合は
ps ax | grep ruby
mongrelのpid取得して

kill {pid}


以上!