Freelance Web Engineer

Redmine 1.1.1 インストール&設定

2011-02-03  redmine, ubuntu, project-management

プロジェクト管理ツールRedmineをさくらVPSサーバにインストールしたときのメモです。 結構躓くのでご参考になればと思います。

サーバ環境は以下の通り:

サーバ
Ubuntu 10.04.1 LTS on さくらVPS
Ruby
未インストール
Webサーバ
Apache2
DB
MySQL 5.1

手順

  1. RVMインストール
  2. Ruby Enterprise Edition インストール
  3. Passenger インストール & 設定
  4. Rails 2.3.5 インストール
  5. Redmineソース取得
  6. Redmine設定

1. RVMインストール

オフィシャルサイト: Installing RVMを参考。

$ bash < <( curl http://rvm.beginrescueend.com/releases/rvm-install-head )
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
109   986  109   986    0     0   1721      0 --:--:-- --:--:-- --:--:--  7042
bash: line 31: git: command not found

ERROR: Cloning from git://github.com/wayneeseguin/rvm.git failed, trying via https now (https://github.com/wayneeseguin/rvm.git).
bash: line 35: git: command not found

ERROR: Cloning from https://github.com/wayneeseguin/rvm.git failed, perhaps your git version does not support the https protocol?  out of ideas... halting.

gitがないので怒られた。aptitudeでインストールする。

$ sudo aptitude install git-core

もう一度rvmインストール

$ bash < <( curl http://rvm.beginrescueend.com/releases/rvm-install-head )

.bashrcに以下を追加。

# rvm
[[ -s "$HOME/.rvm/scripts/rvm" ]] &amp;&amp; . "$HOME/.rvm/scripts/rvm"  # This loads RVM into a shell session.

インストールされたか確認。

$ source .bashrc 
$ type rvm | head -1
rvm is a function
$ source ~/.rvm/scripts/rvm
$ rvm notes

OK.

2. Ruby Enterprise Editionインストール

$ rvm install ree
/home/masayuki/.rvm/rubies/ree-1.8.7-2010.02
ree-1.8.7-2010.02 - #fetching (ruby-enterprise-1.8.7-2010.02)
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 7629k  100 7629k    0     0  1330k      0  0:00:05  0:00:05 --:--:-- 1661k
ree-1.8.7-2010.02 - #extracting ruby-enterprise-1.8.7-2010.02 to /home/masayuki/.rvm/src/ree-1.8.7-2010.02
ree-1.8.7-2010.02 - #installing 
Error running './installer -a /home/masayuki/.rvm/rubies/ree-1.8.7-2010.02  --dont-install-useful-gems ', please read /home/masayuki/.rvm/log/ree-1.8.7-2010.02/install.log
There has been an error while trying to run the ree installer. Halting the installation.

エラー内容を確認し、必要なものをインストール

$ rvm package install readline
$ sudo aptitude install build-essential
$ sudo aptitude install libreadline5-dev

もっかいreeをインストール

$ rvm install ree
/home/masayuki/.rvm/rubies/ree-1.8.7-2010.02
ree-1.8.7-2010.02 - #fetching (ruby-enterprise-1.8.7-2010.02)
ree-1.8.7-2010.02 - #extracting ruby-enterprise-1.8.7-2010.02 to /home/masayuki/.rvm/src/ree-1.8.7-2010.02
ree-1.8.7-2010.02 - #installing 
ree-1.8.7-2010.02 - #rubygems installing to ree-1.8.7-2010.02
Retrieving rubygems-1.5.0
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  285k  100  285k    0     0  86065      0  0:00:03  0:00:03 --:--:--  126k
Extracting rubygems-1.5.0 ...
ree-1.8.7-2010.02 - adjusting #shebangs for (gem).
ree-1.8.7-2010.02 - #importing default gemsets (/home/masayuki/.rvm/gemsets/)

OK.

3. Passenger インストール & 設定

これもRVMオフィシャルサイトを参考に。

$ rvm ree --passenger
If you are using Passenger 3 you no longer need the passenger_ruby,
use the wrapper script for your ruby instead (see 'rvm wrapper')
$ gem install passenger
$ rvmsudo passenger-install-apache2-module

モジュール足りないのでインストール

$ sudo aptitude install libcurl4-openssl-dev

もっかい。

$ rvmsudo passenger-install-apache2-module
--
The Apache 2 module was successfully installed.

Please edit your Apache configuration file, and add these lines:

   LoadModule passenger_module /home/masayuki/.rvm/gems/ree-1.8.7-2010.02/gems/passenger-3.0.2/ext/apache2/mod_passenger.so
   PassengerRoot /home/masayuki/.rvm/gems/ree-1.8.7-2010.02/gems/passenger-3.0.2
   PassengerRuby /home/masayuki/.rvm/wrappers/ree-1.8.7-2010.02/ruby

After you restart Apache, you are ready to deploy any number of Ruby on Rails
applications on Apache, without any further Ruby on Rails-specific
configuration!

Press ENTER to continue.


--------------------------------------------
Deploying a Ruby on Rails application: an example

Suppose you have a Rails application in /somewhere. Add a virtual host to your
Apache configuration file and set its DocumentRoot to /somewhere/public:

   <VirtualHost *:80>
      ServerName www.yourhost.com
      DocumentRoot /somewhere/public    # <-- be sure to point to 'public'!
      <Directory /somewhere/public>
         AllowOverride all              # <-- relax Apache security settings
         Options -MultiViews            # <-- MultiViews must be turned off
      </Directory>
   </VirtualHost>

And that's it! You may also want to check the Users Guide for security and
optimization tips, troubleshooting and other useful information:
--

これら情報をapacheのconfに設定

$ sudo vi /etc/apache2/mods-available/passenger.load
--
LoadModule passenger_module /home/masayuki/.rvm/gems/ree-1.8.7-2010.02/gems/passenger-3.0.2/ext/apache2/mod_passenger.so
--
$ sudo vi /etc/apache2/mods-available/passenger.conf
--
<IfModule mod_passenger.c>
    PassengerRoot /home/masayuki/.rvm/gems/ree-1.8.7-2010.02/gems/passenger-3.0.2
    PassengerRuby /home/masayuki/.rvm/wrappers/ree-1.8.7-2010.02/ruby
</IfModule>
--

passengerモジュールを有効化&サーバリスタート

$ sudo a2enmod passenger
Enabling module passenger.
Run '/etc/init.d/apache2 restart' to activate new configuration!
$ sudo /etc/init.d/apache2 restart
 * Restarting web server apache2
 ... waiting    ...done.

バーチャルホスト設定ファイルを作成し、先ほどメモっておいたVirtualHost設定部分を環境に合わせて書き込む

$ sudo vi /etc/apache2/sites-available/redmine

バーチャルホストを有効化

$ sudo a2ensite redmine
$ sudo /etc/init.d/apache2 reload

4. Rails 2.3.5 インストール

$ gem install rails -v=2.3.5

Redmineには i18nが必要なのでインストールしておく。

$ gem install -v=0.4.2 i18n
Fetching: i18n-0.4.2.gem (100%)
Successfully installed i18n-0.4.2
1 gem installed
Installing ri documentation for i18n-0.4.2...
Installing RDoc documentation for i18n-0.4.2...

5. Redmineソース取得

適当なディレクトリにソースコードをチェックアウト。

$ cd /var/local/projects/
/var/local/projects$ sudo svn co http://redmine.rubyforge.org/svn/branches/1.1-stable redmine-1.1
A    redmine-1.1/test
:
 U   redmine-1.1
Checked out revision 4794.

ここでブラウザから確認したらエラー表示された。

undefined local variable or method `version_requirements' for #<Rails::GemDependency:0xb7351b0c>

どうやらgemのバージョンが1.5だとうまくいかないらしい。 調査し、こちらのパッチを当てたら動いた!

6. Redmine設定

mysqlにログインし、Redmine用DB作成する

mysql> create database redmine character set utf8;
Query OK, 1 row affected (0.00 sec)

mysql> create user 'redmine'@'localhost' identified by '[適当に変えてね]';
Query OK, 0 rows affected (0.02 sec)

mysql> grant all privileges on redmine.* to 'redmine'@'localhost';
Query OK, 0 rows affected (0.03 sec)

database.yml.exampleをコピーし、適切に書き換える

/var/local/projects/redmine-1.1$ cp config/database.yml.example config/database.yml

migrationでスキーマを流しこむ

/var/local/projects/redmine-1.1$ rake db:migrate RAILS_ENV=production
(in /var/local/projects/redmine-1.1)
rake aborted!
A key is required to write a cookie containing the session data. Use config.action_controller.session = { :key => "_myapp_session", :secret => "some secret phrase" } in config/environment.rb

(See full trace by running task with --trace)

エラー! config/environment.rb に追記する

config.action_controller.session = { :key => "[適切に変えてね]", :secret => "[適切に変えてね]" }

もっかい。

/var/local/projects/redmine-1.1$ rake db:migrate RAILS_ENV=production
(in /var/local/projects/redmine-1.1)
!!! The bundled mysql.rb driver has been removed from Rails 2.2. Please install the mysql gem and try again: gem install mysql.
rake aborted!
no such file to load -- mysql

(See full trace by running task with --trace)

mysqlドライバインストール。。

/var/local/projects/redmine-1.1$ gem install mysql

もう一回。

/var/local/projects/redmine-1.1$ rake db:migrate RAILS_ENV=production
(in /var/local/projects/redmine-1.1)
==  Setup: migrating ==========================================================
-- create_table("attachments", {:force=>true})
   -> 0.0230s
:

できた!

初期データを入れる

/var/local/projects/redmine-1.1$ rake redmine:load_default_data RAILS_ENV=production
(in /var/local/projects/redmine-1.1)

Select language: bg, bs, ca, cs, da, de, el, en, en-GB, es, eu, 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] ja
====================================
Default configuration data loaded.

OK.

ブラウザ確認し、Redmine画面が表示されることを確認。admin/adminでログインし、アカウントを変更する。 以上。疲れたー。

comments powered by Disqus