1.Railsのインストール
バージョン指定なしでインストールすると最新バージョンがインストールされ、データベース環境を作成するときにエラーがでるので、バージョン指定してインストールします。
>sudo gem install -v=2.1.2 rails
バージョン指定しないでインストールしてしまった場合は、まず、アンインストールします。
※2009/09/22時点では、バージョン指定をしないでインストールすると、2.3.4がインストールされます。
>gem list
*** LOCAL GEMS ***
actionmailer (2.1.2)
actionpack (2.1.2)
activerecord (2.1.2)
activeresource (2.1.2)
activesupport (2.1.2)
rack (1.0.0)
rails (2.1.2)
rake (0.8.7)
複数バージョンがインストールされている場合は、バージョン指定をしてアンインストールします。
>gem uninstall -v=2.3.4 rails
2.データベースにRailsの環境を作成する
バージョンが違うやらで結構失敗しました。
/var/redmine>sudo rake db:migrate RAILS_ENV=production
こんなメッセージが出たら、バージョン指定してインストール
(in /var/redmine)
Missing the Rails 2.1.2 gem. Please `gem install -v=2.1.2 rails`, update your RAILS_GEM_VERSION
setting in config/environment.rb for the Rails version you do have installed, or comment out
RAILS_GEM_VERSION to use the latest version installed.
3.Passengerをインストールする
apache上でrailsを実行するためのモジュールをインストールする
以下の3つのパッケージが必要になります。
・build-essential(rubyインストール時にインストール済み)
・ruby1.8-dev(rubyインストール時にインストール済み)
・passenger(今回インストールする)
>sudo gem install passenger
4.apache2用のpassengerのモジュールをインストール
<sudo passenger-install-apache2-module
確認メッセージがでるので、「1.The Apache2 module will be installed for you」を選択します
通常(いや、自分の環境)では、足りないモジュールがあるので、足りないものをインストール後、再度、上のコマンドを実行する。
足りないモジュールの一覧が表示される
note found(★印がついている)のモジュールをインストールする
* GNU C++ compiler... found at /usr/bin/g++
* Ruby development headers... found
* OpenSSL support for Ruby... found
* RubyGems... found
* Rake... found at /usr/bin/rake
* Apache 2... found at /usr/sbin/apache2
★* Apache 2 development headers... not found
★* Apache Portable Runtime (APR) development headers... not found
★* Apache Portable Runtime Utility (APU) development headers... not found
>sudo aptitude install apache2-prefork-dev libapr1-dev libaprutil1-dev
↓これでもOKらしい
>sudo aptitude install apache2-prefork-dev libapr1-dev -y
インストールが完了すると、英語でいろいろなメッセージが表示されます。
(実際の設定をどうしたかは、別途記載します)
Passengerに関するapache2のモジュール指定のファイルに記載する情報が表示されます。
LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.2.5/ext/apache2/mod_passenger.so
PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.2.5
PassengerRuby /usr/bin/ruby1.8
apache2に設定するバーチャルホストの設定に関する情報が表示されます。
<VirtualHost *:80>
ServerName www.yourhost.com
DocumentRoot /somewhere/public # <-- be sure to point to 'public'!
</VirtualHost>
■Apache2の設定
Apache2でPassengerを使用できる用に設定します。
1.passengerの設定ファイル作成
/etc/apache2/mods-available/ディレクトリに移動しておきます。
passenger.loadファイルを作成し、以下の内容を記述します。
LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.2.5/ext/apache2/mod_passenger.so
passenger.confファイルを作成し、以下の内容を記述します。
PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.2.5
PassengerRuby /usr/bin/ruby1.8
2.passengerを有効の有効化
apache2を再起動を再起動し、passengerを有効にします。
>sudo a2enmod passenger
Run '/etc/init.d/apache2 restart' to activate new configuration!
>sudo /etc/init.d/apache2 restart
3.redmine用サイト作成
redmine用の仮想サイトの作成をします。
あらかじめ、/etc/apache2/sites-available/ディレクトリに移動しておきます。
redmineというサイトファイルを作成し、以下の内容を記載する
<VirtualHost *:80>
ServerName サーバー名 ← 1)サーバー名
DocumentRoot /var/redmine/puclic ← redmineのインストール先
<Directory /var/redmine/public/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog /var/redmine/redmine-err.log
</VirtualHost>
1)は、redmineのサイト名を記載します。
例)redmine.servername等
2)は、redmineのインストール先のpublicディレクトリ名を記載します。
4.新しく作成したredmineサイトを有効化
4.1 redmine用のVirtualHostの有効化
>sudo a2ensite redmine
4.2 しなくてもいいかも
>sudo a2enmod rewrite
4.3 apache2の再起動
>sudo /etc/init.d/apache2 restart
apache2の再起動が[OK]になれば完了
■その他
新しく作成したサイトのIPアドレスは、hostsに書いておく。