Ubuntu10.4でRedmine1.0.1(まとめ直し版)
以前にまとめたUbuntu10.4でRedmineを元に記述間違いや新たな問題が発生したので、新しいエントリとして、情報を整理してまとめ直してみました。
以前との違いは
- Ubuntuはデュアルブートでインストール → 前回は仮想環境(VirtualBox)
- Redmine1.0.1 → 前回は0.9.4
インストールの流れ
MySQLのインストール
apt-getでmysqlをインストールします。
インストールの途中でmysqlでのrootのパスワードを聞かれるので、任意のパスワードを設定してください。
mysqlへの接続確認
mysqlコマンドをユーザー(-u)とパスワードオプション(-p)を付けて実行します。
オプションを付けない場合は接続エラーが出るので、オプションは必ずつけて実行します。
$ sudo mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 43 Server version: 5.1.41-3ubuntu12.1 (Ubuntu) Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>
ユーザー(-u)とパスワードオプション(-p)を付けない場合(接続エラー)
$ sudo mysql ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
MySQLにRedmine用のデータベースの作成
mysqlに正常に接続出来たら、Redmine用のデータベース、ユーザーを作成しておきます。
テーブルの作成などはRailsのmigrateで行うので、ここでは行いません。
- データベースの作成(DB名はredmine)
mysql> create database redmine character set utf8; Query OK, 1 row affected (0.00 sec) mysql> show databases;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- +
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Database |
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- +
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
information_schema |
mysql |
redmine |
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- +
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ユーザーの作成と権限付与
mysql> create user 'redmine'@'localhost' identified by 'your_password'; Query OK, 0 rows affected (0.01 sec) mysql> mysql> grant all privileges on redmine.* to 'redmine'@'localhost';
Rubyのインストール
spt-getでrubyをインストールします。
Ruby本体のインストール
$ sudo apt-get install ruby $ ruby -v ruby 1.8.7 (2010-01-10 patchlevel 249) [i486-linux]
Ruby Developperのインストール(足りないライブラリなどがあるため)
$ sudo apt-get install ruby1.8-dev
Railsのインストール
先にインストールしたgemでRailsをインストールします。
gemでインストールする場合、状況によってインストール方法を少し変える必要があります。
普通のRailsインストール
普通は以下のコマンドでRailsをインストールできます。
$ sudo gem install rails Successfully installed rake-0.8.7 Successfully installed activesupport-2.3.8 Successfully installed activerecord-2.3.8 Successfully installed rack-1.1.0 Successfully installed actionpack-2.3.8 Successfully installed actionmailer-2.3.8 Successfully installed activeresource-2.3.8 Successfully installed rails-2.3.8 8 gems installed
プロキシが設定されている場合
会社などでプロキシが設定されている場合、普通にRailsをインストールしようとするとエラーが発生します。
$ sudo gem install rails ERROR: http://gems.rubyforge.org/ does not appear to be a repository ERROR: could not find gem rails locally or in a repository
この場合、プロキシを設定してインストールする必要があります。
プロキシを設定してのインストールとしては以下の2つが使用出来ます。
ただ私の場合、HTTP_PROXYにセットする方法では上記と同様のエラーが発生してインストール出来ませんでした。
- HTTP_PROXYにセットしてのインストール
$ HTTP_PROXY=http://your.proxy.hostname:port_no $ export HTTP_PROXY $ sudo gem install rails Successfully installed rake-0.8.7 Successfully installed activesupport-2.3.8 Successfully installed activerecord-2.3.8 Successfully installed rack-1.1.0 Successfully installed actionpack-2.3.8 Successfully installed actionmailer-2.3.8 Successfully installed activeresource-2.3.8 Successfully installed rails-2.3.8 8 gems installed
- -pオプションでプロキシを設定してインストール
$ sudo gem install rails -p http://your.proxy.hostname:port_no Successfully installed rake-0.8.7 Successfully installed activesupport-2.3.8 Successfully installed activerecord-2.3.8 Successfully installed rack-1.1.0 Successfully installed actionpack-2.3.8 Successfully installed actionmailer-2.3.8 Successfully installed activeresource-2.3.8 Successfully installed rails-2.3.8 8 gems installed
gemをダウンロードして手動でインストール
通常のインストール、プロキシ設定でのインストール、どちらも正常に実行出来ない場合は、Railsに必要になるgemを個別にダウンロードして、手動でインストールする必要があります。
gemはrubyforgeからダウンロード出来ます。
RubyForge
http://rubyforge.org/
ダウンロードするgem
rake、activesupport、
activerecord、rack、actionpack、actionmailer、activeresource、rails
gemをダウンロードしたら、ダウンロード先のディレクトリに移動して以下のコマンドでgemを手動でインストールします。
$ sudo gem install rake --local $ sudo gem install activesupport --local $ sudo gem install activerecord --local $ sudo gem install rack --local $ sudo gem install actionpack --local $ sudo gem install actionmailer --local $ sudo gem install activeresource --local $ sudo gem install rails --local
RailsにPATHを通しておく。
正常にRailsのインストールが終わると、以下のディレクトリにRailsがインストールされます。
利便性のためにパスを通しておきます。
パスが通っていないので、.bashrcにパスを設定
PATH="/var/lib/gems/1.8/bin:$PATH"
Apcheのインストール
apt-getでapache2をインストールします。
$ sudo apt-get install apache2 $ sudo apt-get install build-essential $ sudo apt-get install apache2-prefork-dev
DocumentRootのオーナーがrootだと面倒なので、変更しておきます。
$ chown user:users /var/www
- httpd.confの場所
/etc/apache2/httpd.conf
- httpd.confは空なので実際にはこっちを直す
/etc/apache2/apache2.conf
/etc/apache2/sites-available/default
- DocumentRootを変更
DocumentRoot /var/www/html
- apache2の起動・停止・再起動
$ sudo /etc/init.d/apache2 start $ /etc/init.d/apache2 stop $ sudo /etc/init.d/apache2 restart
ブラウザでhttp://localhost/にアクセスして正常にApacheが起動しているかを確認しておきます。
[passengerのインストール]
Apache上でRubyを動作させるために、passengerをインストールします。
gemでもインストールとなるので、Railsをインストールしたときと同じように状況によってインストール方法を変えます。
普通のpassengerのインストール
$ sudo gem install passenger
プロキシが設定されている場合
$ sudo gem install passenger -p http://your.proxy.hostname:port_no
gemをダウンロードして手動でインストールする場合
passengerのインストールにはfastthreadが必要なのであわせてダウンロードします。
ダウンロードするgem
fastthread、passenger
- 手動でインストール
$ sudo gem install fastthread --local $ sudo gem install passenger --local
passenger-install-apache2-moduleのインストール
gemでのpassengerのインストールが正常に完了したら、続いてpassenger-install-apache2-moduleをインストールします。
- passenger-install-apache2-moduleのインストール
$ sudo passenger-install-apache2-module
インストールの最後の方で表示される以下ような文をhttpd.confに記述します。
LoadModule passenger_module /var/lib/gems/1.8/gems/passenger-2.2.14/ext/apache2/mod_passenger.so PassengerRoot /var/lib/gems/1.8/gems/passenger-2.2.14 PassengerRuby /usr/bin/ruby1.8
Redmineのインストール
Redmineのダウンロード
RubyForgeからRedmineダウンロードページからredmine-1.0.1.tar.gzをダウンロードします。
Redmineダウンロードページ
http://rubyforge.org/frs/?group_id=1850
次にドキュメントルートにRedmineを配置します。
$ cp -p redmine-1.0.1.tar.gz /var/www/html/ $ cd /var/www/html/ $ tar zxf redmine-1.0.1.tar.gz $ mv redmine-1.0.1 redmine
database.ymlの設定
redmine/config/database.yml.exampleをコピーして同一ディレクトリにdatabase.ymlを作成して、以下のような記述をします。
- /var/www/html/redmine/config/database.yml
※「password: ********」mysqlのユーザーに設定したパスワードを記述してください。
production: adapter: mysql database: redmine host: localhost username: redmine password: ******** encoding: utf8
session_store.rbの実行
/var/www/html/redmine/に移動して、session_store.rbを実行します。
$ rake config/initializers/session_store.rb
redmineのmigrate
session_store.rbが正常終了したら、さっきと同じディレクトリでmigrateを実行します。
$ rake db:migrate RAILS_ENV=production
migrateの時にrackのバージョンの不一致によって、以下のようなエラー発生する場合があります。
$ rake db:migrate RAILS_ENV=production (in /var/www/html/redmine) rake aborted! RubyGem version error: rack(1.1.0 not ~> 1.0.1) (See full trace by running task with --trace)
この場合、vendor/rails/actionpack/lib/action_controller.rbを以下のように書き換えた上でmigrateを実行します。
vendor/rails/actionpack/lib/action_controller.rb
#gem 'rack', '~> 1.0.1' → コメント化 gem 'rack', '~> 1.1.0'
今回参考にしたページ
Redmine.JP - Redmineのインストール
http://redmine.jp/guide/RedmineInstall/
自宅サーバー Debian/Ubuntu - MySQL で DB サーバー構築
http://debianj.com/ubuntu/install/mysql.html
MySQLでいこう! ERROR 1045 (28000)
http://mysql.deikou.com/pages/000060.html
[Ruby]Proxy 経由のネット接続環境におけるGems
http://trwtnb.blogspot.com/2009/11/rubyproxygems.html
Apache上でRuby on Railsアプリケーションを動かす/Passenger(mod_rails for Apache)の利用
http://redmine.jp/tech_note/apache-passenger/
Symfowareについての考察blog - DebianにRedmineをインストールする
http://symfoware.blog68.fc2.com/blog-entry-422.html