ラベル passenger の投稿を表示しています。 すべての投稿を表示
ラベル passenger の投稿を表示しています。 すべての投稿を表示

2012年2月16日木曜日

CentOS6.2 Redmine1.3.1構築メモ(3)

CentOS6.2にRedmine1.3.1を構築する手順をまとめてみました。
 Step1. パッケージおよびインストーラの準備
 Step2. MySQLの準備
 Step3. Ruby Enterprise Edition インストール
 Step4. Redmine インストール
 Step5. ApacheにPassenger組込み

■構成情報
・OS:        CentOS6.2(64bit)
・MySQL:     5.1.52(OSバンドル)
・Ruby:      1.8.7(Ruby Enterprise Editionを利用)
 ・rack:    1.1.2
 ・rake:    0.9.2
 ・i18n:    0.4.2
・gem:       1.6.2
・Apache:    2.2.15(OSバンドル)
・Passenger: 3.0.11
・Redmine:   1.3.1


Step5. ApacheにPassenger組込み
■Passengerのインストール
[root@redmine ~]# gem install passenger --no-rdoc --no-ri
Fetching: fastthread-1.0.7.gem (100%)
Building native extensions.  This could take a while...
Fetching: daemon_controller-1.0.0.gem (100%)
Fetching: passenger-3.0.11.gem (100%)
Successfully installed fastthread-1.0.7
Successfully installed daemon_controller-1.0.0
Successfully installed passenger-3.0.11
3 gems installed
[root@redmine ~]#


■PassengerのApache用モジュールのインストール
[root@redmine ~]# passenger-install-apache2-module
Welcome to the Phusion Passenger Apache 2 module installer, v3.0.11.

This installer will guide you through the entire installation process. It
shouldn't take more than 3 minutes in total.

Here's what you can expect from the installation process:

 1. The Apache 2 module will be installed for you.
 2. You'll learn how to configure Apache.
 3. You'll learn how to deploy a Ruby on Rails application.

Don't worry if anything goes wrong. This installer will advise you on how to
solve any problems.

Press Enter to continue, or Ctrl-C to abort.


--------------------------------------------

Checking for required software...

 * GNU C++ compiler... found at /usr/bin/g++
 * Curl development headers with SSL support... found
 * OpenSSL development headers... found
 * Zlib development headers... found
 * Ruby development headers... found
 * OpenSSL support for Ruby... found
 * RubyGems... found
 * Rake... found at /usr/local/bin/rake
 * rack... found
 * Apache 2... found at /usr/sbin/httpd
 * Apache 2 development headers... found at /usr/sbin/apxs
 * Apache Portable Runtime (APR) development headers... found at /usr/bin/apr-1-config
 * Apache Portable Runtime Utility (APU) development headers... found at /usr/bin/apu-1-config

--------------------------------------------
Compiling and installing Apache 2 module...
(中略)

--------------------------------------------
The Apache 2 module was successfully installed.

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

   LoadModule passenger_module /usr/local/lib/ruby/gems/1.8/gems/passenger-3.0.11/ext/apache2/mod_passenger.so
   PassengerRoot /usr/local/lib/ruby/gems/1.8/gems/passenger-3.0.11
   PassengerRuby /usr/local/bin/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:

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

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

  /usr/local/lib/ruby/gems/1.8/gems/passenger-3.0.11/doc/Users guide Apache.html

Enjoy Phusion Passenger, a product of Phusion (www.phusion.nl) :-)
http://www.modrails.com/

Phusion Passenger is a trademark of Hongli Lai & Ninh Bui.
[root@redmine ~]#


■Apacheの設定
⇒worker MPMに切り替える
[root@redmine ~]# vi /etc/sysconfig/httpd
[root@redmine ~]# grep httpd.worker /etc/sysconfig/httpd
#HTTPD=/usr/sbin/httpd.worker
HTTPD=/usr/sbin/httpd.worker ←追記

⇒passnger.conf作成
[root@redmine ~]# vi /etc/httpd/conf.d/passnger.conf
[root@redmine ~]# cat /etc/httpd/conf.d/passnger.conf
# output of "passenger-install-apache2-module"
LoadModule passenger_module /usr/local/lib/ruby/gems/1.8/gems/passenger-3.0.11/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/ruby/gems/1.8/gems/passenger-3.0.11
PassengerRuby /usr/local/bin/ruby

# rails settings
RailsBaseURI /redmine

# Passengerが追加するHTTPヘッダを削除するための設定
Header always unset "X-Powered-By"
Header always unset "X-Rack-Cache"
Header always unset "X-Content-Digest"
Header always unset "X-Runtime"

# 必要に応じてPassengerのチューニングのための設定を追加。
PassengerMaxPoolSize 20
PassengerMaxInstancesPerApp 4
PassengerPoolIdleTime 3600
PassengerUseGlobalQueue on
PassengerHighPerformance on
PassengerStatThrottleRate 10
RailsSpawnMethod smart
RailsAppSpawnerIdleTime 86400
RailsFrameworkSpawnerIdleTime 0
[root@redmine ~]#

⇒Apache自動起動設定
[root@redmine ~]# chkconfig httpd on; chkconfig --list httpd
httpd           0:off   1:off   2:on    3:on    4:on    5:on    6:off
[root@redmine ~]#

⇒Redmineディレクトリの所有者変更
[root@redmine ~]# chown -R apache: /opt/redmine-1.3.1

⇒サブディレクトリでRedmineを実行(シンボリックリンク作成)
[root@redmine ~]# ln -s /opt/redmine-1.3.1/public /var/www/html/redmine

⇒/etc/hosts修正
[root@redmine ~]# vi /etc/hosts
[root@redmine ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
#::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.xxx.234   redmine.kuitan.net redmine
[root@redmine ~]#


⇒Apacheを起動
[root@redmine ~]# /etc/init.d/httpd configtest
Syntax OK
[root@redmine ~]# /etc/init.d/httpd graceful
httpd not running, trying to start
[root@redmine ~]# /etc/init.d/httpd status
httpd.worker (pid  16808) を実行中...
[root@redmine ~]#


⇒ブラウザからアクセス
http://192.168.xxx.234/redmine
ログイン:admin/admin

★終了ーーー


■作業完了後のディスク使用状況
[root@redmine ~]# df -m
Filesystem           1M-ブロック    使用   使用可 使用% マウント位置
/dev/mapper/vg_redmine-lv_root
                          4607      3666       708  84% /
tmpfs                      751         1       751   1% /dev/shm
/dev/sda1                  485        33       428   7% /boot
[root@redmine ~]#


■初期状態のDBおよび添付ファイルをバックアップ
[root@redmine ~]# mkdir redmine_bk
[root@redmine ~]# mysqldump -u root db_redmine > /root/redmine_bk/db_redmine_initial.dbf
[root@redmine ~]# cd /opt/redmine-1.3.1/files/
[root@redmine files]# tar -zcf /root/redmine_bk/files_initial.tar.gz *
→初期状態ではfilesディレクトリにはdelete.meファイルしかないので実質的には不要。

[root@redmine ~]# ll /root/redmine_bk/
合計 60
-rw-r--r-- 1 root root 55227  2月  8 18:47 2012 db_redmine_initial.dbf
-rw-r--r-- 1 root root   151  2月  8 18:48 2012 files_initial.tar.gz
[root@redmine ~]#

2011年9月25日日曜日

Redmine1.2.1構築メモ(4)

■構成情報
・OS:    CentOS5.7(64bit)
・MySQL:   5.0.77(OSバンドル)
・Ruby:   1.8.7(Ruby Enterprise Editionを利用)
 ・rack:  1.1.1
 ・rake:  0.8.7
 ・i18n:  0.4.2
・Apache:  2.2.3(OSバンドル)
・Passenger: 3.0.9
・Redmine:  1.2.1
(4) ApacheにPassengerを組み込み

■パッケージを準備
[root@redmine01 ~]# rpm -q httpd-devel
パッケージ httpd-devel はインストールされていません。
[root@redmine01 ~]# yum -y install httpd-devel
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: www.ftp.ne.jp
 * extras: www.ftp.ne.jp
 * updates: www.ftp.ne.jp
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package httpd-devel.i386 0:2.2.3-53.el5.centos.1 set to be updated
--> Processing Dependency: httpd = 2.2.3-53.el5.centos.1 for package: httpd-devel
--> Processing Dependency: apr-util-devel for package: httpd-devel
--> Processing Dependency: apr-devel for package: httpd-devel
---> Package httpd-devel.x86_64 0:2.2.3-53.el5.centos.1 set to be updated
--> Running transaction check
---> Package apr-devel.x86_64 0:1.2.7-11.el5_6.5 set to be updated
---> Package apr-util-devel.x86_64 0:1.2.7-11.el5_5.2 set to be updated
--> Processing Dependency: httpd = 2.2.3-53.el5.centos for package: mod_ssl
--> Processing Dependency: httpd = 2.2.3-53.el5.centos for package: httpd-manual
---> Package httpd.x86_64 0:2.2.3-53.el5.centos.1 set to be updated
--> Running transaction check
---> Package httpd-manual.x86_64 0:2.2.3-53.el5.centos.1 set to be updated
---> Package mod_ssl.x86_64 1:2.2.3-53.el5.centos.1 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

==========================================================================================================================
 Package                               Arch                Version                        Repository                 Size
==========================================================================================================================
Installing:
 httpd-devel                           i386                2.2.3-53.el5.centos.1          updates                   151 k
 httpd-devel                           x86_64              2.2.3-53.el5.centos.1          updates                   151 k
Installing for dependencies:
 apr-devel                             x86_64              1.2.7-11.el5_6.5               base                      238 k
 apr-util-devel                        x86_64              1.2.7-11.el5_5.2               base                       53 k
Updating for dependencies:
 httpd                                 x86_64              2.2.3-53.el5.centos.1          updates                   1.2 M
 httpd-manual                          x86_64              2.2.3-53.el5.centos.1          updates                   815 k
 mod_ssl                               x86_64              1:2.2.3-53.el5.centos.1        updates                    94 k

Transaction Summary
==========================================================================================================================
Install       4 Package(s)
Upgrade       3 Package(s)

Total download size: 2.7 M
Downloading Packages:
(1/7): apr-util-devel-1.2.7-11.el5_5.2.x86_64.rpm                                                       |  53 kB     00:00
(2/7): mod_ssl-2.2.3-53.el5.centos.1.x86_64.rpm                                                         |  94 kB     00:00
(3/7): httpd-devel-2.2.3-53.el5.centos.1.x86_64.rpm                                                     | 151 kB     00:00
(4/7): httpd-devel-2.2.3-53.el5.centos.1.i386.rpm                                                       | 151 kB     00:00
(5/7): apr-devel-1.2.7-11.el5_6.5.x86_64.rpm                                                            | 238 kB     00:00
(6/7): httpd-manual-2.2.3-53.el5.centos.1.x86_64.rpm                                                    | 815 kB     00:00
(7/7): httpd-2.2.3-53.el5.centos.1.x86_64.rpm                                                           | 1.2 MB     00:00
---------------------------------------------------------------------------------------------------------------------------
Total                                                                                          1.2 MB/s | 2.7 MB     00:02
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Updating       : httpd                                                                                              1/10
  Installing     : apr-devel                                                                                          2/10
  Updating       : mod_ssl                                                                                            3/10
  Installing     : apr-util-devel                                                                                     4/10
  Updating       : httpd-manual                                                                                       5/10
  Installing     : httpd-devel                                                                                        6/10
  Installing     : httpd-devel                                                                                        7/10
  Cleanup        : httpd-manual                                                                                       8/10
  Cleanup        : httpd                                                                                              9/10
  Cleanup        : mod_ssl                                                                                           10/10

Installed:
  httpd-devel.i386 0:2.2.3-53.el5.centos.1   httpd-devel.x86_64 0:2.2.3-53.el5.centos.1

Dependency Installed:
  apr-devel.x86_64 0:1.2.7-11.el5_6.5        apr-util-devel.x86_64 0:1.2.7-11.el5_5.2

Dependency Updated:
  httpd.x86_64 0:2.2.3-53.el5.centos.1       httpd-manual.x86_64 0:2.2.3-53.el5.centos.1     mod_ssl.x86_64 1:2.2.3-53.el5.centos.1

Complete!
[root@redmine01 ~]#


■Passengerのインストール
[root@redmine01 ~]# gem install passenger --no-rdoc --no-ri
Fetching: fastthread-1.0.7.gem (100%)
Building native extensions.  This could take a while...
Fetching: daemon_controller-0.2.6.gem (100%)
Fetching: passenger-3.0.9.gem (100%)
Successfully installed fastthread-1.0.7
Successfully installed daemon_controller-0.2.6
Successfully installed passenger-3.0.9
3 gems installed
[root@redmine01 ~]#


■PassengerのApache用モジュールのインストール
[root@redmine01 ~]# passenger-install-apache2-module
Welcome to the Phusion Passenger Apache 2 module installer, v3.0.9.

This installer will guide you through the entire installation process. It
shouldn't take more than 3 minutes in total.

Here's what you can expect from the installation process:

 1. The Apache 2 module will be installed for you.
 2. You'll learn how to configure Apache.
 3. You'll learn how to deploy a Ruby on Rails application.

Don't worry if anything goes wrong. This installer will advise you on how to
solve any problems.

Press Enter to continue, or Ctrl-C to abort.


--------------------------------------------

Checking for required software...

 * GNU C++ compiler... found at /usr/bin/g++
 * Curl development headers with SSL support... found
 * OpenSSL development headers... found
 * Zlib development headers... found
 * Ruby development headers... found
 * OpenSSL support for Ruby... found
 * RubyGems... found
 * Rake... found at /usr/local/bin/rake
 * rack... found
 * Apache 2... found at /usr/sbin/httpd
 * Apache 2 development headers... found at /usr/sbin/apxs
 * Apache Portable Runtime (APR) development headers... found at /usr/bin/apr-1-config
 * Apache Portable Runtime Utility (APU) development headers... found at /usr/bin/apu-1-config

--------------------------------------------
Compiling and installing Apache 2 module...
cd /usr/local/lib/ruby/gems/1.8/gems/passenger-3.0.9
/usr/local/bin/ruby /usr/local/bin/rake apache2:clean apache2 RELEASE=yes
(中略)

--------------------------------------------
The Apache 2 module was successfully installed.

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

   LoadModule passenger_module /usr/local/lib/ruby/gems/1.8/gems/passenger-3.0.9/ext/apache2/mod_passenger.so
   PassengerRoot /usr/local/lib/ruby/gems/1.8/gems/passenger-3.0.9
   PassengerRuby /usr/local/bin/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:

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

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

  /usr/local/lib/ruby/gems/1.8/gems/passenger-3.0.9/doc/Users guide Apache.html

Enjoy Phusion Passenger, a product of Phusion (www.phusion.nl) :-)
http://www.modrails.com/

Phusion Passenger is a trademark of Hongli Lai & Ninh Bui.
[root@redmine01 ~]#


■Apacheの設定
⇒worker MPMに切り替える
[root@redmine01 ~]# vi /etc/sysconfig/httpd
[root@redmine01 ~]# grep httpd.worker /etc/sysconfig/httpd
#HTTPD=/usr/sbin/httpd.worker
HTTPD=/usr/sbin/httpd.worker ←追記

⇒passnger.conf作成
[root@redmine01 ~]# vi /etc/httpd/conf.d/passnger.conf
[root@redmine01 ~]# cat /etc/httpd/conf.d/passnger.conf
# output of "passenger-install-apache2-module"
LoadModule passenger_module /usr/local/lib/ruby/gems/1.8/gems/passenger-3.0.9/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/ruby/gems/1.8/gems/passenger-3.0.9
PassengerRuby /usr/local/bin/ruby

# rails settings
RailsBaseURI /redmine

# Passengerが追加するHTTPヘッダを削除するための設定
Header always unset "X-Powered-By"
Header always unset "X-Rack-Cache"
Header always unset "X-Content-Digest"
Header always unset "X-Runtime"

# 必要に応じてPassengerのチューニングのための設定を追加。
PassengerMaxPoolSize 20
PassengerMaxInstancesPerApp 4
PassengerPoolIdleTime 3600
PassengerUseGlobalQueue on
PassengerHighPerformance on
PassengerStatThrottleRate 10
RailsSpawnMethod smart
RailsAppSpawnerIdleTime 86400
RailsFrameworkSpawnerIdleTime 0
[root@redmine01 ~]#

⇒Apache自動起動設定
[root@redmine01 ~]# chkconfig --list httpd
httpd           0:off   1:off   2:off   3:off   4:off   5:off   6:off
[root@redmine01 ~]# chkconfig httpd on

⇒Redmineディレクトリの所有者変更
[root@redmine01 ~]# chown -R apache: /opt/redmine-1.2.1

⇒サブディレクトリでRedmineを実行(シンボリックリンク作成)
[root@redmine01 ~]# ln -s /opt/redmine-1.2.1/public /var/www/html/redmine

⇒Apacheを起動
[root@redmine01 ~]# /etc/init.d/httpd configtest
Syntax OK
[root@redmine01 ~]# /etc/init.d/httpd graceful
httpd not running, trying to start
[root@redmine01 ~]#

⇒ブラウザからアクセス
http://192.168.1.15/redmine/
ログイン:admin/admin

お手数をおかけして恐縮ですが、広告サイトクリックにご協力いただけるとありがたいです。m(_ _)m

2011年9月24日土曜日

Redmine1.2.1構築メモ(3)

■構成情報
・OS:    CentOS5.7(64bit)
・MySQL:   5.0.77(OSバンドル)
・Ruby:   1.8.7(Ruby Enterprise Editionを利用)
 ・rack:  1.1.1
 ・rake:  0.8.7
 ・i18n:  0.4.2
・Apache:  2.2.3(OSバンドル)
・Passenger: 3.0.9
・Redmine:  1.2.1
(3) Redmineインストール

■インストーラダウンロード&解凍
http://rubyforge.org/frs/?group_id=1850
redmine-1.2.1.tar.gzをダウンロードしてサーバにUP

⇒/optに解凍
[root@redmine01 src]# tar -zxf redmine-1.2.1.tar.gz -C /opt

■Redmine関連ファイル設定
[root@redmine01 ~]# cd /opt/redmine-1.2.1/

⇒database.yml作成
[root@redmine01 redmine-1.2.1]# vi config/database.yml
[root@redmine01 redmine-1.2.1]# cat config/database.yml
production:
  adapter: mysql
  database: db_redmine
  host: localhost
  username: user_redmine
  password: ienaiyo
  encoding: utf8
[root@redmine01 redmine-1.2.1]#

⇒configuration.ymlの設定
[root@redmine01 redmine-1.2.1]# cp config/configuration.yml.example config/configuration.yml
[root@redmine01 redmine-1.2.1]# vi config/configuration.yml
[root@redmine01 redmine-1.2.1]# tail -11 config/configuration.yml
production:
  email_delivery:
    delivery_method: :smtp
    smtp_settings:
      address: "localhost"
      port: 25
      domain: 'foo.com'

# specific configuration options for development environment
# that overrides the default ones
development:
[root@redmine01 redmine-1.2.1]#

⇒Redmineの初期設定とデータベースのテーブル作成
[root@redmine01 redmine-1.2.1]# rake generate_session_store
(in /opt/redmine-1.2.1)
[root@redmine01 redmine-1.2.1]# rake db:migrate RAILS_ENV=production
(in /opt/redmine-1.2.1)
==  Setup: migrating ==========================================================
-- create_table("attachments", {:force=>true})
   -> 0.0072s
-- create_table("auth_sources", {:force=>true})
(中略)

==  AddRepositoriesExtraInfo: migrating =======================================
-- add_column(:repositories, :extra_info, :text)
   -> 0.0092s
==  AddRepositoriesExtraInfo: migrated (0.0095s) ==============================

[root@redmine01 redmine-1.2.1]#



2011年9月23日金曜日

Redmine1.2.1構築メモ(2)

■構成情報
・OS:    CentOS5.7(64bit)
・MySQL:   5.0.77(OSバンドル)
・Ruby:   1.8.7(Ruby Enterprise Editionを利用)
 ・rack:  1.1.1
 ・rake:  0.8.7
 ・i18n:  0.4.2
・Apache:  2.2.3(OSバンドル)
・Passenger: 3.0.9
・Redmine:  1.2.1
(2) Ruby Enterprise Edition インストール

■OSバンドルのRuby有無確認
[root@redmine01 ~]# rpm -qa | grep ruby
[root@redmine01 ~]#
⇒既存Rubyは存在しないのでOK!

■インストーラダウンロード&解凍
http://www.rubyenterpriseedition.com/download.html
ruby-enterprise-1.8.7-2011.03.tar.gzをダウンロードしてサーバにUP

[root@redmine01 ~]# cd /home/public/src/
[root@redmine01 src]# tar -zxf ruby-enterprise-1.8.7-2011.03.tar.gz

■インストール
[root@redmine01 src]# ruby-enterprise-1.8.7-2011.03/installer --dont-install-useful-gems --no-dev-docs
Welcome to the Ruby Enterprise Edition installer
This installer will help you install Ruby Enterprise Edition 1.8.7-2011.03.
Don't worry, none of your system files will be touched if you don't want them
to, so there is no risk that things will screw up.

You can expect this from the installation process:

  1. Ruby Enterprise Edition will be compiled and optimized for speed for this
     system.
  2. Ruby on Rails will be installed for Ruby Enterprise Edition.
  3. You will learn how to tell Phusion Passenger to use Ruby Enterprise
     Edition instead of regular Ruby.

Press Enter to continue, or Ctrl-C to abort.

Checking for required software...

 * C compiler... found at /usr/bin/gcc
 * C++ compiler... found at /usr/bin/g++
 * The 'make' tool... found at /usr/bin/make
 * The 'patch' tool... found at /usr/bin/patch
 * Zlib development headers... found
 * OpenSSL development headers... found
 * GNU Readline development headers... found
--------------------------------------------
Target directory

Where would you like to install Ruby Enterprise Edition to?
(All Ruby Enterprise Edition files will be put inside that directory.)

[/opt/ruby-enterprise-1.8.7-2011.03] : /usr/local ←インストール先を指定
--------------------------------------------
Compiling and optimizing the memory allocator for Ruby Enterprise Edition
In the mean time, feel free to grab a cup of coffee.
(中略)

--------------------------------------------
Installing useful libraries...
/usr/local/bin/ruby /usr/local/bin/gem sources --update
source cache successfully updated
Updating /usr/local/bin/irb...
Updating /usr/local/bin/gem...
Updating /usr/local/bin/ri...
Updating /usr/local/bin/erb...
Updating /usr/local/bin/testrb...
Updating /usr/local/bin/rdoc...
--------------------------------------------
Ruby Enterprise Edition is successfully installed!
If want to use Phusion Passenger (http://www.modrails.com) in combination
with Ruby Enterprise Edition, then you must reinstall Phusion Passenger against
Ruby Enterprise Edition, as follows:

  /usr/local/bin/passenger-install-apache2-module

Make sure you don't forget to paste the Apache configuration directives that
the installer gives you.


If you ever want to uninstall Ruby Enterprise Edition, simply remove this
directory:

  /usr/local

If you have any questions, feel free to visit our website:

  http://www.rubyenterpriseedition.com

Enjoy Ruby Enterprise Edition, a product of Phusion (www.phusion.nl) :-)
[root@redmine01 src]# 

⇒/usr/localのインストール前
[root@redmine01 ~]# ll /usr/local/
合計 80
drwxr-xr-x 2 root root 4096  5月 11 20:58 bin
drwxr-xr-x 2 root root 4096  5月 11 20:58 etc
drwxr-xr-x 2 root root 4096  5月 11 20:58 games
drwxr-xr-x 2 root root 4096  5月 11 20:58 include
drwxr-xr-x 2 root root 4096  5月 11 20:58 lib
drwxr-xr-x 2 root root 4096  5月 11 20:58 lib64
drwxr-xr-x 2 root root 4096  5月 11 20:58 libexec
drwxr-xr-x 2 root root 4096  5月 11 20:58 sbin
drwxr-xr-x 4 root root 4096  9月 24 05:19 share
drwxr-xr-x 2 root root 4096  5月 11 20:58 src

⇒/usr/localのインストール後
[root@redmine01 ~]# ll /usr/local/
合計 80
drwxr-xr-x 2 root root 4096  9月 24 23:27 bin
drwxr-xr-x 2 root root 4096  5月 11 20:58 etc
drwxr-xr-x 2 root root 4096  5月 11 20:58 games
drwxr-xr-x 2 root root 4096  5月 11 20:58 include
drwxr-xr-x 3 root root 4096  9月 24 23:27 lib
drwxr-xr-x 2 root root 4096  5月 11 20:58 lib64
drwxr-xr-x 2 root root 4096  5月 11 20:58 libexec
drwxr-xr-x 2 root root 4096  5月 11 20:58 sbin
drwxr-xr-x 4 root root 4096  9月 24 05:19 share
drwxr-xr-x 2 root root 4096  5月 11 20:58 src


■gemパッケージのインストール
⇒Rack 1.1.1のインストール
[root@redmine01 ~]# gem install rack -v=1.1.1 --no-rdoc --no-ri
Fetching: rack-1.1.1.gem (100%)
Successfully installed rack-1.1.1
1 gem installed
[root@redmine01 ~]#

⇒rake 0.8.7のインストール
[root@redmine01 ~]# gem install rake -v=0.8.7 --no-rdoc --no-ri
Fetching: rake-0.8.7.gem (100%)
Successfully installed rake-0.8.7
1 gem installed
[root@redmine01 ~]#

⇒i18n 0.4.2のインストール
[root@redmine01 ~]# gem install i18n -v=0.4.2 --no-rdoc --no-ri
Fetching: i18n-0.4.2.gem (100%)
Successfully installed i18n-0.4.2
1 gem installed
[root@redmine01 ~]#

⇒Ruby用MySQLドライバのインストール
[root@redmine01 ~]# gem install mysql --no-rdoc --no-ri
Fetching: mysql-2.8.1.gem (100%)
Building native extensions.  This could take a while...
Successfully installed mysql-2.8.1
1 gem installed
[root@redmine01 ~]#

⇒確認
[root@redmine01 ~]# gem list

*** LOCAL GEMS ***

i18n (0.4.2)
mysql (2.8.1)
rack (1.1.1)
rake (0.8.7)
[root@redmine01 ~]#

2011年9月22日木曜日

Redmine1.2.1構築メモ(1)

■構成情報
・OS:    CentOS5.7(64bit)
・MySQL:   5.0.77(OSバンドル)
・Ruby:   1.8.7(Ruby Enterprise Editionを利用)
 ・rack:  1.1.1
 ・rake:  0.8.7
 ・i18n:  0.4.2
・Apache:  2.2.3(OSバンドル)
・Passenger: 3.0.9
・Redmine:  1.2.1
(1) MySQLの準備

■OSバンドルのmysqlモジュール確認
[root@redmine01 ~]# mysql --version
mysql  Ver 14.12 Distrib 5.0.77, for redhat-linux-gnu (x86_64) using readline 5.1
[root@redmine01 ~]# rpm -qa | grep mysql
libdbi-dbd-mysql-0.8.1a-1.2.2
mysql-5.0.77-4.el5_6.6
mysql-server-5.0.77-4.el5_6.6
mysql-5.0.77-4.el5_6.6
mysql-connector-odbc-3.51.26r1127-1.el5
⇒mysql-develがない!

■mysql-develインストール
[root@redmine01 ~]# yum -y install mysql-devel
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: www.ftp.ne.jp
 * extras: www.ftp.ne.jp
 * updates: www.ftp.ne.jp
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package mysql-devel.i386 0:5.0.77-4.el5_6.6 set to be updated
---> Package mysql-devel.x86_64 0:5.0.77-4.el5_6.6 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================
 Package                    Arch          Version                 Repository       Size
========================================================================================
Installing:
 mysql-devel                i386          5.0.77-4.el5_6.6        base            2.4 M
 mysql-devel                x86_64        5.0.77-4.el5_6.6        base            2.5 M

Transaction Summary
========================================================================================
Install       2 Package(s)
Upgrade       0 Package(s)

Total download size: 4.9 M
Downloading Packages:
(1/2): mysql-devel-5.0.77-4.el5_6.6.i386.rpm                              | 2.4 MB  00:01
(2/2): mysql-devel-5.0.77-4.el5_6.6.x86_64.rpm                            | 2.5 MB  00:00
------------------------------------------------------------------------------------------
Total                                                            2.2 MB/s | 4.9 MB  00:02
警告: rpmts_HdrFromFdno: ヘッダ V3 DSA signature: NOKEY, key ID e8562897
base/gpgkey                                                               | 1.5 kB  00:00
Importing GPG key 0xE8562897 "CentOS-5 Key (CentOS 5 Official Signing Key) " from /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : mysql-devel                                                                                      1/2
  Installing     : mysql-devel                                                                                      2/2

Installed:
  mysql-devel.i386 0:5.0.77-4.el5_6.6                       mysql-devel.x86_64 0:5.0.77-4.el5_6.6

Complete!
[root@redmine01 ~]#


■データベース初期化
[root@redmine01 ~]# /etc/init.d/mysqld start
MySQL データベースを初期化中:  Installing MySQL system tables...
OK
Filling help tables...
OK

To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
/usr/bin/mysqladmin -u root password 'new-password'
/usr/bin/mysqladmin -u root -h rails02.daynalias.net password 'new-password'

Alternatively you can run:
/usr/bin/mysql_secure_installation

which will also give you the option of removing the test
databases and anonymous user created by default.  This is
strongly recommended for production servers.

See the manual for more instructions.

You can start the MySQL daemon with:
cd /usr ; /usr/bin/mysqld_safe &

You can test the MySQL daemon with mysql-test-run.pl
cd mysql-test ; perl mysql-test-run.pl

Please report any problems with the /usr/bin/mysqlbug script!

The latest information about MySQL is available on the web at
http://www.mysql.com
Support MySQL by buying support/licenses at http://shop.mysql.com
                                                           [  OK  ]
MySQL を起動中:                                            [  OK  ]

⇒起動確認
[root@redmine01 ~]# mysqlshow
+--------------------+
|     Databases      |
+--------------------+
| information_schema |
| mysql              |
| test               |
+--------------------+


■自動起動設定
[root@redmine01 ~]# chkconfig --list mysqld
mysqld          0:off   1:off   2:off   3:off   4:off   5:off   6:off
[root@redmine01 ~]# chkconfig mysqld on
[root@redmine01 ~]# chkconfig --list mysqld
mysqld          0:off   1:off   2:on    3:on    4:on    5:on    6:off


■MySQLのデフォルトキャラクタセットをutf8に設定
[root@redmine01 ~]# cp -p /etc/my.cnf /etc/my.cnf.20110510
[root@redmine01 ~]# vi /etc/my.cnf
[root@redmine01 ~]# cat /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1

# Disabling symbolic-links is recommended to prevent assorted security risks;
# to do so, uncomment this line:
# symbolic-links=0

# 20110924 for redmine		←追記
default-character-set=utf8	←追記

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

# 20110924 for redmine		←追記
[mysql]				←追記
default-character-set=utf8	←追記
[root@redmine01 ~]#

⇒キャラクタセット設定確認
[root@redmine01 ~]# /etc/init.d/mysqld restart
MySQL を停止中:                                            [  OK  ]
MySQL を起動中:                                            [  OK  ]
[root@redmine01 ~]# mysql -u root
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.0.77 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> show variables like 'character_set%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)


■Redmine用データベース準備
⇒匿名ユーザー削除
mysql> use mysql
Database changed
mysql> delete from user where user = '';
Query OK, 2 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

⇒Redmine用データベースとユーザーの作成
mysql> create database db_redmine default character set utf8;
Query OK, 1 row affected (0.06 sec)

mysql> grant all on db_redmine.* to user_redmine identified by 'ienaiyo';
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> exit
Bye

2011年9月21日水曜日

apacheにpassenger組み込み

■前提
CentOS5.7バンドルのapacheを利用する。


■現在組み込まれているパッケージの確認
[root@rails01 ~]# rpm -qa | grep -e httpd- -e apr-
httpd-2.2.3-53.el5.centos
apr-1.2.7-11.el5_6.5
apr-1.2.7-11.el5_6.5
apr-util-1.2.7-11.el5_5.2
apr-util-1.2.7-11.el5_5.2
httpd-manual-2.2.3-53.el5.centos
system-config-httpd-1.3.3.3-1.el5
⇒passengerインストールに必要そうなhttpd-devel、apr-develがない!


■passengerコマンドに必要なパッケージを準備
[root@rails01 ~]# yum -y install httpd-devel apr-devel
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: www.ftp.ne.jp
 * extras: www.ftp.ne.jp
 * updates: www.ftp.ne.jp
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package apr-devel.i386 0:1.2.7-11.el5_6.5 set to be updated
---> Package apr-devel.x86_64 0:1.2.7-11.el5_6.5 set to be updated
---> Package httpd-devel.i386 0:2.2.3-53.el5.centos.1 set to be updated
--> Processing Dependency: httpd = 2.2.3-53.el5.centos.1 for package: httpd-devel
--> Processing Dependency: apr-util-devel for package: httpd-devel
---> Package httpd-devel.x86_64 0:2.2.3-53.el5.centos.1 set to be updated
--> Running transaction check
---> Package apr-util-devel.x86_64 0:1.2.7-11.el5_5.2 set to be updated
--> Processing Dependency: httpd = 2.2.3-53.el5.centos for package: mod_ssl
--> Processing Dependency: httpd = 2.2.3-53.el5.centos for package: httpd-manual
---> Package httpd.x86_64 0:2.2.3-53.el5.centos.1 set to be updated
--> Running transaction check
---> Package httpd-manual.x86_64 0:2.2.3-53.el5.centos.1 set to be updated
---> Package mod_ssl.x86_64 1:2.2.3-53.el5.centos.1 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

======================================================================================================================================
 Package                          Arch                     Version                                    Repository                 Size
======================================================================================================================================
Installing:
 apr-devel                        i386                     1.2.7-11.el5_6.5                           base                      233 k
 apr-devel                        x86_64                   1.2.7-11.el5_6.5                           base                      238 k
 httpd-devel                      i386                     2.2.3-53.el5.centos.1                      updates                   151 k
 httpd-devel                      x86_64                   2.2.3-53.el5.centos.1                      updates                   151 k
Installing for dependencies:
 apr-util-devel                   x86_64                   1.2.7-11.el5_5.2                           base                       53 k
Updating for dependencies:
 httpd                            x86_64                   2.2.3-53.el5.centos.1                      updates                   1.2 M
 httpd-manual                     x86_64                   2.2.3-53.el5.centos.1                      updates                   815 k
 mod_ssl                          x86_64                   1:2.2.3-53.el5.centos.1                    updates                    94 k

Transaction Summary
======================================================================================================================================
Install       5 Package(s)
Upgrade       3 Package(s)

Total download size: 2.9 M
Downloading Packages:
(1/8): apr-util-devel-1.2.7-11.el5_5.2.x86_64.rpm                                                              |  53 kB     00:00
(2/8): mod_ssl-2.2.3-53.el5.centos.1.x86_64.rpm                                                                |  94 kB     00:00
(3/8): httpd-devel-2.2.3-53.el5.centos.1.x86_64.rpm                                                            | 151 kB     00:00
(4/8): httpd-devel-2.2.3-53.el5.centos.1.i386.rpm                                                              | 151 kB     00:00
(5/8): apr-devel-1.2.7-11.el5_6.5.i386.rpm                                                                     | 233 kB     00:00
(6/8): apr-devel-1.2.7-11.el5_6.5.x86_64.rpm                                                                   | 238 kB     00:00
(7/8): httpd-manual-2.2.3-53.el5.centos.1.x86_64.rpm                                                           | 815 kB     00:00
(8/8): httpd-2.2.3-53.el5.centos.1.x86_64.rpm                                                                  | 1.2 MB     00:00
--------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                 1.3 MB/s | 2.9 MB     00:02
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Updating       : httpd                                                                                                         1/11
  Installing     : apr-devel                                                                                                     2/11
  Updating       : mod_ssl                                                                                                       3/11
  Installing     : apr-util-devel                                                                                                4/11
  Updating       : httpd-manual                                                                                                  5/11
  Installing     : httpd-devel                                                                                                   6/11
  Installing     : httpd-devel                                                                                                   7/11
  Installing     : apr-devel                                                                                                     8/11
  Cleanup        : httpd-manual                                                                                                  9/11
  Cleanup        : httpd                                                                                                        10/11
  Cleanup        : mod_ssl                                                                                                      11/11

Installed:
  apr-devel.i386 0:1.2.7-11.el5_6.5              apr-devel.x86_64 0:1.2.7-11.el5_6.5     httpd-devel.i386 0:2.2.3-53.el5.centos.1
  httpd-devel.x86_64 0:2.2.3-53.el5.centos.1

Dependency Installed:
  apr-util-devel.x86_64 0:1.2.7-11.el5_5.2

Dependency Updated:
  httpd.x86_64 0:2.2.3-53.el5.centos.1     httpd-manual.x86_64 0:2.2.3-53.el5.centos.1     mod_ssl.x86_64 1:2.2.3-53.el5.centos.1

Complete!
[root@rails01 ~]#

■Passengerのインストール
[root@rails01 ~]# gem install passenger
Building native extensions.  This could take a while...
Successfully installed fastthread-1.0.7
Successfully installed daemon_controller-0.2.6
Successfully installed passenger-3.0.9
3 gems installed
Installing ri documentation for fastthread-1.0.7...
Installing ri documentation for daemon_controller-0.2.6...
Installing ri documentation for passenger-3.0.9...
Installing RDoc documentation for fastthread-1.0.7...
Installing RDoc documentation for daemon_controller-0.2.6...
Installing RDoc documentation for passenger-3.0.9...


■Apacheモジュールのビルドとインストール
[root@rails01 ~]# passenger-install-apache2-module
Welcome to the Phusion Passenger Apache 2 module installer, v3.0.9.

This installer will guide you through the entire installation process. It
shouldn't take more than 3 minutes in total.

Here's what you can expect from the installation process:

 1. The Apache 2 module will be installed for you.
 2. You'll learn how to configure Apache.
 3. You'll learn how to deploy a Ruby on Rails application.

Don't worry if anything goes wrong. This installer will advise you on how to
solve any problems.

Press Enter to continue, or Ctrl-C to abort.


--------------------------------------------

Checking for required software...

 * GNU C++ compiler... found at /usr/bin/g++
 * Curl development headers with SSL support... found
 * OpenSSL development headers... found
 * Zlib development headers... found
 * Ruby development headers... found
 * OpenSSL support for Ruby... found
 * RubyGems... found
 * Rake... found at /usr/local/bin/rake
 * rack... found
 * Apache 2... found at /usr/sbin/httpd
 * Apache 2 development headers... found at /usr/sbin/apxs
 * Apache Portable Runtime (APR) development headers... found at /usr/bin/apr-1-config
 * Apache Portable Runtime Utility (APU) development headers... found at /usr/bin/apu-1-config

--------------------------------------------
Compiling and installing Apache 2 module...
cd /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9
(中略)

--------------------------------------------
The Apache 2 module was successfully installed.

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

   LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/ext/apache2/mod_passenger.so
   PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9
   PassengerRuby /usr/local/bin/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:

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

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

  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/doc/Users guide Apache.html

Enjoy Phusion Passenger, a product of Phusion (www.phusion.nl) :-)
http://www.modrails.com/

Phusion Passenger is a trademark of Hongli Lai & Ninh Bui.
[root@rails01 ~]#

■passenger.confの作成
[root@rails01 ~]# vi /etc/httpd/conf.d/passenger.conf
[root@rails01 ~]# cat /etc/httpd/conf.d/passenger.conf
# 20110920 output ob "passenger-install-apache2-module"
LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9
PassengerRuby /usr/local/bin/ruby

# rails settings
RailsBaseURI /sample


⇒VirtualHostは使用せずにシンボリックリンクで対応。
[root@rails01 ~]# cd /var/www/html/
[root@rails01 html]# ln -s /root/rails_projects/sample/public sample

⇒apacheアカウントでアクセスできるようchange owner
[root@rails01 ~]# chown -R apache: /root/rails_projects/sample

⇒httpd再起動
[root@rails01 ~]# /etc/init.d/httpd restart
httpd を停止中:                                            [  OK  ]
httpd を起動中:                                            [  OK  ]


■ブラウザで確認
http://192.168.1.12/sample

Forbidden
You don't have permission to access /sample on this server.
------------------------------------------------------------------
Apache/2.2.3 (CentOS) Server at 192.168.1.12 Port 80

⇒apacheアカウントにowner変更しても/rootディレクトリ以下にはアクセスできないようだ…。


■Rubyプロジェクトディレクトリの変更
[root@rails01 ~]# cp -pr /root/rails_projects /

⇒シンボリックリンクも貼り直し
[root@rails01 ~]# cd /var/www/html/
[root@rails01 html]# rm sample
rm: remove シンボリックリンク `sample'? y
[root@rails01 html]# ln -s /rails_projects/sample/public sample

⇒httpd再起動し、ブラウザで確認
http://192.168.1.12/sample

passengerのエラー画面が表示される
Ruby on Rails application could not be started
Error message:
Unknown database 'sample_production' (Mysql2::Error)

デフォルトではproductionデータベースにアクセスしているようなので、passenger.confを修正
ちなみに、WEBrickで起動すれば問題なくアクセス可能
http://192.168.1.12:3000/

[root@rails01 ~]# vi /etc/httpd/conf.d/passenger.conf
[root@rails01 ~]# cat /etc/httpd/conf.d/passenger.conf
# 20110920 output ob "passenger-install-apache2-module"
LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.9
PassengerRuby /usr/local/bin/ruby

# rails settings
RailsBaseURI /sample
RailsEnv development
[root@rails01 ~]#

⇒httpd再起動し、ブラウザで確認
http://192.168.1.12/sample →デフォルトページ(Welcome aboard)が表示される
http://192.168.1.12/sample/tbl_vms →前回scaffoldで作成したページが表示される