■クライアントPCおよびRedmineの両方からアクセスできるように所有者変更 [root@redmine01 git_repos]# chown -R public:apache sample ■configuration.yml設定 ⇒gitモジュールのパス確認 [root@redmine01 ~]# ll /usr/local/bin/git -rwxr-xr-x 109 root root 4977962 9月 25 14:56 /usr/local/bin/git ⇒configuration.yml設定 [root@redmine01 ~]# vi /opt/redmine-1.2.1/config/configuration.yml [root@redmine01 ~]# grep -n git /opt/redmine-1.2.1/config/configuration.yml 116: # scm_git_command: /usr/local/bin/git # (default: git) 122: scm_git_command: /usr/local/bin/git ←修正 [root@redmine01 ~]# ■Redmine画面から設定 ⇒gitの使用可能確認 管理 > 設定 > リポジトリタブ 使用するバージョン管理システム: gitのバージョンが表示され使用可能になっている ⇒gitリポジトリ設定 プロジェクト選択 > 設定 > リポジトリ バージョン管理システム: Git リポジトリのパス: /opt/git_repos/sample →プロジェクトに"リポジトリ"タブが表示される。
2011年9月27日火曜日
Redmineとgitの連携
2011年9月26日月曜日
CentOS5.7にgit1.7.6.1インストール
■インストーラダウンロード
https://github.com/git/git/downloads
[root@redmine01 ~]# ll /usr/local/
合計 80
drwxr-xr-x 2 root root 4096 9月 25 00:19 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
[root@redmine01 ~]# cd /home/public/src/
[root@redmine01 src]# tar -zxf git-git-v1.7.6.1-0-gccef604.tar.gz
[root@redmine01 src]# cd git-git-ce54b9b/
⇒./configureがないので、いきなりmake
[root@redmine01 git-git-ce54b9b]# make prefix=/usr/local
GIT_VERSION = 1.7.6.1
* new build flags or prefix
CC daemon.o
* new link flags
CC abspath.o
(中略)
GEN bin-wrappers/test-svn-fe
GEN bin-wrappers/test-treap
[root@redmine01 git-git-ce54b9b]#
⇒make install
[root@redmine01 git-git-ce54b9b]# make prefix=/usr/local install
* new build flags or prefix
CC daemon.o
CC abspath.o
(中略)
cp "$execdir/git-remote-http" "$execdir/$p" || exit; \
done && \
./check_bindir "z$bindir" "z$execdir" "$bindir/git-add"
[root@redmine01 git-git-ce54b9b]#
■bareリポジトリ(共有リポジトリ)作成
[root@redmine01 ~]# mkdir -p /opt/git_repos/sample
[root@redmine01 ~]# cd /opt/git_repos/sample
[root@redmine01 sample]# git init --bare --shared=true
Initialized empty shared Git repository in /opt/git_repos/sample/
[root@redmine01 sample]# git branch
[root@redmine01 sample]#
※作成直後はブランチは存在しない。
⇒所有者変更
[root@redmine01 ~]# chown -R public: /opt/git_repos/sample
[root@redmine01 ~]# ll /opt/git_repos/sample
合計 32
-rw-rw-r-- 1 public public 23 9月 25 21:35 HEAD
drwxrwsr-x 2 public public 4096 9月 25 21:35 branches
-rw-rw-r-- 1 public public 126 9月 25 21:35 config
-rw-rw-r-- 1 public public 73 9月 25 21:35 description
drwxrwsr-x 2 public public 4096 9月 25 21:35 hooks
drwxrwsr-x 2 public public 4096 9月 25 21:35 info
drwxrwsr-x 4 public public 4096 9月 25 21:35 objects
drwxrwsr-x 4 public public 4096 9月 25 21:35 refs
[root@redmine01 ~]#
-----------------------------------------------------------
◆クライアントPC(Windows7)にて、msysgitインストール
⇒msysgitダウンロード
http://code.google.com/p/msysgit/downloads/list
Git-1.7.6-preview20110708.exe
⇒インストール
ウィザードに従ってインストール。選択肢は下記を選択
・Use Git Bash only
・Ceckout Windows-style, commit Unix-style line endings
◆クライアントPC(Windows7)にて、msysgitを利用し対象ディレクトリをバージョン管理する
Welcome to Git (version 1.7.6-preview20110708)
Run 'git help git' to display the help index.
Run 'git help ' to display help for specific commands.
admin@TANYAO-PC /E/git_reops/test
⇒対象ディレクトリをgitでソース管理
$ git init
Initialized empty Git repository in e:/git_reops/test/.git/
admin@TANYAO-PC /E/git_reops/test (master)
⇒リモートの共有リポジトリをoriginという名前で定義
$ git remote add origin ssh://public@192.168.1.15/opt/git_repos/sample
admin@TANYAO-PC /E/git_reops/test (master)
⇒ユーザ名とメールアドレスを設定
$ git config --global user.name "tanyao"
admin@TANYAO-PC /E/git_reops/test (master)
$ git config --global user.email admin@tanyao.dynalias.net
admin@TANYAO-PC /E/git_reops/test (master)
⇒全ファイルをステージングに追加
$ git add .
warning: LF will be replaced by CRLF in .gitignore.
The file will have its original line endings in your working directory.
warning: LF will be replaced by CRLF in Gemfile.
(後略)
admin@TANYAO-PC /E/git_reops/test (master)
⇒コミット
$ git commit -m "initial import"
[master (root-commit) 40b0767] initial import
warning: LF will be replaced by CRLF in .gitignore.
The file will have its original line endings in your working directory.
warning: LF will be replaced by CRLF in Gemfile.
The file will have its original line endings in your working directory.
(後略)
admin@TANYAO-PC /E/git_reops/test (master)
⇒共有リポジトリにプッシュ
$ git push origin master
public@192.168.1.15's password:
Counting objects: 87, done.
Compressing objects: 100% (74/74), done.
Writing objects: 100% (87/87), 29.65 KiB, done.
Total 87 (delta 2), reused 0 (delta 0)
To ssh://public@192.168.1.15/opt/git_repos/sample
* [new branch] master -> master
admin@TANYAO-PC /E/git_reops/test (master)
-----------------------------------------------------------
■クライアントPC(Windows7)からpush後、再確認
[root@redmine01 sample]# git branch
* master
[root@redmine01 sample]# ll
合計 32
-rw-rw-r-- 1 public public 23 9月 25 21:35 HEAD
drwxrwsr-x 2 public public 4096 9月 25 21:35 branches
-rw-rw-r-- 1 public public 126 9月 25 21:35 config
-rw-rw-r-- 1 public public 73 9月 25 21:35 description
drwxrwsr-x 2 public public 4096 9月 25 21:35 hooks
drwxrwsr-x 2 public public 4096 9月 25 21:35 info
drwxrwsr-x 79 public public 4096 9月 25 21:46 objects ←ファイルが増えている
drwxrwsr-x 4 public public 4096 9月 25 21:35 refs
[root@redmine01 sample]# ll objects/
合計 308
drwxrwsr-x 2 public public 4096 9月 25 21:46 04
drwxrwsr-x 2 public public 4096 9月 25 21:46 05
drwxrwsr-x 2 public public 4096 9月 25 21:46 08
drwxrwsr-x 2 public public 4096 9月 25 21:46 0a
drwxrwsr-x 2 public public 4096 9月 25 21:46 11
(後略)
■devブランチ作成
[root@redmine01 sample]# git branch dev
[root@redmine01 sample]# git branch
dev
* master
[root@redmine01 sample]# git checkout dev
fatal: This operation must be run in a work tree
[root@redmine01 sample]#
※bareリポジトリではmaster以外のブランチに移動できないようだ。
-----------------------------------------------------------
◆クライアントPC(Windows7)にて、共有リポジトリをプル
$ git pull
public@192.168.1.15's password:
From ssh://192.168.1.15/opt/git_repos/sample
* [new branch] dev -> origin/dev
You asked me to pull without telling me which branch you
want to merge with, and 'branch.master.merge' in
your configuration file does not tell me, either. Please
specify which branch you want to use on the command line and
try again (e.g. 'git pull ').
See git-pull(1) for details.
If you often merge with the same branch, you may want to
use something like the following in your configuration file:
[branch "master"]
remote =
merge =
[remote ""]
url =
fetch =
See git-config(1) for details.
admin@TANYAO-PC /E/git_reops/test (master)
⇒リモートブランチからローカルブランチを生成
$ git branch -a
* master
remotes/origin/dev
remotes/origin/master
admin@TANYAO-PC /E/git_reops/test (master)
$ git checkout -b dev origin/dev
Branch dev set up to track remote branch dev from origin.
Switched to a new branch 'dev'
admin@TANYAO-PC /E/git_reops/test (dev)
$ git branch -a
* dev
master
remotes/origin/dev
remotes/origin/master
admin@TANYAO-PC /E/git_reops/test (dev)
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:お手数をおかけして恐縮ですが、広告サイトクリックにご協力いただけるとありがたいです。m(_ _)mServerName www.yourhost.com DocumentRoot /somewhere/public # <-- be sure to point to 'public'! 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/adminAllowOverride all # <-- relax Apache security settings Options -MultiViews # <-- MultiViews must be turned off
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:http://192.168.1.12/sample/tbl_vms →前回scaffoldで作成したページが表示されるServerName www.yourhost.com DocumentRoot /somewhere/public # <-- be sure to point to 'public'! 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)が表示されるAllowOverride all # <-- relax Apache security settings Options -MultiViews # <-- MultiViews must be turned off
2011年9月20日火曜日
scaffoldでサンプル作成
■テーブル定義
テーブル名:tbl_vms
VM名:vm_name:string
備考:remarks:text
所有者ID:owner_id:integer
■scaffold実施
[root@rails01 ~]# cd rails_projects/sample/
[root@rails01 sample]# rails g scaffold tbl_vms vm_name:string remarks:text owner_id:integer
Plural version of the model detected, using singularized version. Override with --force-plural.
invoke active_record
create db/migrate/20110919145646_create_tbl_vms.rb
create app/models/tbl_vm.rb
invoke test_unit
create test/unit/tbl_vm_test.rb
create test/fixtures/tbl_vms.yml
route resources :tbl_vms
invoke scaffold_controller
create app/controllers/tbl_vms_controller.rb
invoke erb
create app/views/tbl_vms
create app/views/tbl_vms/index.html.erb
create app/views/tbl_vms/edit.html.erb
create app/views/tbl_vms/show.html.erb
create app/views/tbl_vms/new.html.erb
create app/views/tbl_vms/_form.html.erb
invoke test_unit
create test/functional/tbl_vms_controller_test.rb
invoke helper
create app/helpers/tbl_vms_helper.rb
invoke test_unit
create test/unit/helpers/tbl_vms_helper_test.rb
invoke assets
invoke coffee
create app/assets/javascripts/tbl_vms.js.coffee
invoke scss
create app/assets/stylesheets/tbl_vms.css.scss
invoke scss
create app/assets/stylesheets/scaffolds.css.scss
[root@rails01 sample]#
■テーブル作成
[root@rails01 sample]# rake db:migrate
(in /root/rails_projects/sample)
== CreateTblVms: migrating ===================================================
-- create_table(:tbl_vms)
-> 0.0400s
== CreateTblVms: migrated (0.0405s) ==========================================
[root@rails01 sample]#
⇒mysql上で確認
mysql> show tables;
+------------------------------+
| Tables_in_sample_development |
+------------------------------+
| schema_migrations |
| tbl_vms |
+------------------------------+
2 rows in set (0.00 sec)
mysql> desc tbl_vms;
+------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| vm_name | varchar(255) | YES | | NULL | |
| remarks | text | YES | | NULL | |
| owner_id | int(11) | YES | | NULL | |
| created_at | datetime | YES | | NULL | |
| updated_at | datetime | YES | | NULL | |
+------------+--------------+------+-----+---------+----------------+
6 rows in set (0.00 sec)
■ブラウザで確認
http://192.168.1.14:3000/tbl_vms/
2011年9月19日月曜日
CentOS5.7にRuby1.9.2インストール
■OSバンドルのRuby有無確認
[root@rails01 ~]# rpm -qa | grep ruby
[root@rails01 ~]#
⇒既存Rubyは存在しないのでOK!
■インストーラダウンロード
ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.2-p290.tar.gz
smb経由でサーバのsrcディレクトリにアップロード。
■インストール
[root@rails01 ~]# cd /home/public/src/
[root@rails01 src]# tar -zxf ruby-1.9.2-p290.tar.gz
[root@rails01 src]# cd ruby-1.9.2-p290
[root@rails01 ruby-1.9.2-p290]# ./configure --prefix=/usr/local
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
(中略)
ruby library version = 1.9.1
configure: creating ./config.status
config.status: creating Makefile
[root@rails01 ruby-1.9.2-p290]# make
gcc -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initiali zers -Wno-long-long -I. -I.ext/include/x86_64-linux -I./include -I. -DRUBY_EXPORT -o main.o -c main.c
gcc -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initiali zers -Wno-long-long -I. -I.ext/include/x86_64-linux -I./include -I. -DRUBY_EXPORT -o dln.o -c dln.c
(中略:10分くらい)
Generating file member index...
Generating page index...
./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb -e 'File.open("doc/capi/.timestamp", "w"){|f| f.puts(Time.now)}'
[root@rails01 ruby-1.9.2-p290]# make install
(中略)
installing manpages: /usr/local/ruby/share/man/man1
installing default gems: /usr/local/ruby/lib/ruby/gems/1.9.1 (cache, doc, gems, specifications)
rake 0.8.7
rdoc 2.5.8
minitest 1.6.0
⇒バージョン確認
[root@rails01 ~]# ruby -v
ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-linux]
[root@rails01 ~]# gem -v
1.3.7
■Railsインストール
[root@rails01 ~]# gem install rails
Building native extensions. This could take a while...
Depending on your version of ruby, you may need to install ruby rdoc/ri data:
<= 1.8.6 : unsupported
= 1.8.7 : gem install rdoc-data; rdoc-data --install
= 1.9.1 : gem install rdoc-data; rdoc-data --install
>= 1.9.2 : nothing to do! Yay!
Successfully installed multi_json-1.0.3
Successfully installed activesupport-3.1.0
Successfully installed builder-3.0.0
Successfully installed i18n-0.6.0
Successfully installed bcrypt-ruby-3.0.1
Successfully installed activemodel-3.1.0
Successfully installed rack-1.3.3
Successfully installed rack-cache-1.0.3
Successfully installed rack-test-0.6.1
Successfully installed rack-mount-0.8.3
Successfully installed hike-1.2.1
Successfully installed tilt-1.3.3
Successfully installed sprockets-2.0.0
Successfully installed erubis-2.7.0
Successfully installed actionpack-3.1.0
Successfully installed arel-2.2.1
Successfully installed tzinfo-0.3.29
Successfully installed activerecord-3.1.0
Successfully installed activeresource-3.1.0
Successfully installed mime-types-1.16
Successfully installed polyglot-0.3.2
Successfully installed treetop-1.4.10
Successfully installed mail-2.3.0
Successfully installed actionmailer-3.1.0
Successfully installed thor-0.14.6
Successfully installed rack-ssl-1.3.2
Successfully installed rdoc-3.9.4
Successfully installed railties-3.1.0
Successfully installed bundler-1.0.18
Successfully installed rails-3.1.0
30 gems installed
Installing ri documentation for multi_json-1.0.3...
Installing ri documentation for activesupport-3.1.0...
Installing ri documentation for builder-3.0.0...
unable to convert "\xF1" from ASCII-8BIT to UTF-8 for README, skipping
unable to convert "\xF1" from ASCII-8BIT to UTF-8 for README.rdoc, skipping
Installing ri documentation for i18n-0.6.0...
Installing ri documentation for bcrypt-ruby-3.0.1...
Installing ri documentation for activemodel-3.1.0...
Installing ri documentation for rack-1.3.3...
Installing ri documentation for rack-cache-1.0.3...
Installing ri documentation for rack-test-0.6.1...
Installing ri documentation for rack-mount-0.8.3...
Installing ri documentation for hike-1.2.1...
Installing ri documentation for tilt-1.3.3...
Installing ri documentation for sprockets-2.0.0...
Installing ri documentation for erubis-2.7.0...
Installing ri documentation for actionpack-3.1.0...
Installing ri documentation for arel-2.2.1...
Installing ri documentation for tzinfo-0.3.29...
Installing ri documentation for activerecord-3.1.0...
Installing ri documentation for activeresource-3.1.0...
Installing ri documentation for mime-types-1.16...
Installing ri documentation for polyglot-0.3.2...
Installing ri documentation for treetop-1.4.10...
Installing ri documentation for mail-2.3.0...
Installing ri documentation for actionmailer-3.1.0...
Installing ri documentation for thor-0.14.6...
Installing ri documentation for rack-ssl-1.3.2...
Installing ri documentation for rdoc-3.9.4...
Installing ri documentation for railties-3.1.0...
Installing ri documentation for bundler-1.0.18...
Installing ri documentation for rails-3.1.0...
file 'lib' not found
Installing RDoc documentation for multi_json-1.0.3...
Installing RDoc documentation for activesupport-3.1.0...
Installing RDoc documentation for builder-3.0.0...
unable to convert "\xF1" from ASCII-8BIT to UTF-8 for README, skipping
unable to convert "\xF1" from ASCII-8BIT to UTF-8 for README.rdoc, skipping
Installing RDoc documentation for i18n-0.6.0...
Installing RDoc documentation for bcrypt-ruby-3.0.1...
Installing RDoc documentation for activemodel-3.1.0...
Installing RDoc documentation for rack-1.3.3...
Installing RDoc documentation for rack-cache-1.0.3...
Installing RDoc documentation for rack-test-0.6.1...
Installing RDoc documentation for rack-mount-0.8.3...
Installing RDoc documentation for hike-1.2.1...
Installing RDoc documentation for tilt-1.3.3...
Installing RDoc documentation for sprockets-2.0.0...
Installing RDoc documentation for erubis-2.7.0...
Installing RDoc documentation for actionpack-3.1.0...
Installing RDoc documentation for arel-2.2.1...
Installing RDoc documentation for tzinfo-0.3.29...
Installing RDoc documentation for activerecord-3.1.0...
Installing RDoc documentation for activeresource-3.1.0...
Installing RDoc documentation for mime-types-1.16...
Installing RDoc documentation for polyglot-0.3.2...
Installing RDoc documentation for treetop-1.4.10...
Installing RDoc documentation for mail-2.3.0...
Installing RDoc documentation for actionmailer-3.1.0...
Installing RDoc documentation for thor-0.14.6...
Installing RDoc documentation for rack-ssl-1.3.2...
Installing RDoc documentation for rdoc-3.9.4...
Installing RDoc documentation for railties-3.1.0...
Installing RDoc documentation for bundler-1.0.18...
Installing RDoc documentation for rails-3.1.0...
file 'lib' not found
⇒バージョン確認
[root@rails01 ~]# rails --version
Rails 3.1.0
■サンプルプロジェクト作成
[root@rails01 ~]# mkdir rails_projects
[root@rails01 ~]# cd rails_projects/
[root@rails01 rails_projects]# rails new sample -d mysql
create
create README
create Rakefile
create config.ru
create .gitignore
create Gemfile
create app
create app/assets/images/rails.png
create app/assets/javascripts/application.js
create app/assets/stylesheets/application.css
create app/controllers/application_controller.rb
create app/helpers/application_helper.rb
create app/mailers
create app/models
create app/views/layouts/application.html.erb
create app/mailers/.gitkeep
create app/models/.gitkeep
create config
create config/routes.rb
create config/application.rb
create config/environment.rb
create config/environments
create config/environments/development.rb
create config/environments/production.rb
create config/environments/test.rb
create config/initializers
create config/initializers/backtrace_silencers.rb
create config/initializers/inflections.rb
create config/initializers/mime_types.rb
create config/initializers/secret_token.rb
create config/initializers/session_store.rb
create config/initializers/wrap_parameters.rb
create config/locales
create config/locales/en.yml
create config/boot.rb
create config/database.yml
create db
create db/seeds.rb
create doc
create doc/README_FOR_APP
create lib
create lib/tasks
create lib/tasks/.gitkeep
create lib/assets
create lib/assets/.gitkeep
create log
create log/.gitkeep
create public
create public/404.html
create public/422.html
create public/500.html
create public/favicon.ico
create public/index.html
create public/robots.txt
create script
create script/rails
create test/fixtures
create test/fixtures/.gitkeep
create test/functional
create test/functional/.gitkeep
create test/integration
create test/integration/.gitkeep
create test/unit
create test/unit/.gitkeep
create test/performance/browsing_test.rb
create test/test_helper.rb
create tmp/cache
create tmp/cache/assets
create vendor/assets/stylesheets
create vendor/assets/stylesheets/.gitkeep
create vendor/plugins
create vendor/plugins/.gitkeep
run bundle install
Fetching source index for http://rubygems.org/
Installing rake (0.9.2)
Using multi_json (1.0.3)
Using activesupport (3.1.0)
Using bcrypt-ruby (3.0.1)
Using builder (3.0.0)
Using i18n (0.6.0)
Using activemodel (3.1.0)
Using erubis (2.7.0)
Using rack (1.3.3)
Using rack-cache (1.0.3)
Using rack-mount (0.8.3)
Using rack-test (0.6.1)
Using hike (1.2.1)
Using tilt (1.3.3)
Using sprockets (2.0.0)
Using actionpack (3.1.0)
Using mime-types (1.16)
Using polyglot (0.3.2)
Using treetop (1.4.10)
Using mail (2.3.0)
Using actionmailer (3.1.0)
Using arel (2.2.1)
Using tzinfo (0.3.29)
Using activerecord (3.1.0)
Using activeresource (3.1.0)
Installing ansi (1.3.0)
Using bundler (1.0.18)
Installing coffee-script-source (1.1.2)
Installing execjs (1.2.6)
Installing coffee-script (2.2.0)
Using rack-ssl (1.3.2)
Using rdoc (3.9.4)
Using thor (0.14.6)
Using railties (3.1.0)
Installing coffee-rails (3.1.1)
Installing jquery-rails (1.0.14)
Installing mysql2 (0.3.7) with native extensions
Using rails (3.1.0)
Installing sass (3.1.7)
Installing sass-rails (3.1.2)
Installing turn (0.8.2)
Installing uglifier (1.0.3)
Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.
[root@rails01 rails_projects]#
■データベース準備
[root@rails01 ~]# /etc/init.d/mysqld start
MySQL を起動中: [ OK ]
⇒プロジェクトディレクトリに移動してデータベース作成
[root@rails01 ~]# cd /root/rails_projects/sample/
[root@rails01 sample]# rake db:create
(in /root/rails_projects/sample)
rake aborted!
Could not find a JavaScript runtime. See https://github.com/sstephenson/execjs for a list of available runtimes.
/usr/local/lib/ruby/gems/1.9.1/gems/execjs-1.2.6/lib/execjs/runtimes.rb:46:in `autodetect'
/usr/local/lib/ruby/gems/1.9.1/gems/execjs-1.2.6/lib/execjs.rb:5:in `'
/usr/local/lib/ruby/gems/1.9.1/gems/execjs-1.2.6/lib/execjs.rb:4:in `'
(中略)
/usr/local/lib/ruby/1.9.1/rake.rb:1991:in `run'
/usr/local/bin/rake:31:in `'
⇒上記エラー対応のためGemfile修正
[root@rails01 sample]# vi Gemfile
[root@rails01 sample]# head Gemfile
source 'http://rubygems.org'
gem 'rails', '3.1.0'
# add 20110919
gem 'therubyracer'
# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'
[root@rails01 sample]# bundle update
Fetching source index for http://rubygems.org/
(中略)
Installing therubyracer (0.9.4) with native extensions
Using turn (0.8.2)
Using uglifier (1.0.3)
Your bundle is updated! Use `bundle show [gemname]` to see where a bundled gem is installed.
⇒再びデータベース作成
[root@rails01 sample]# rake db:create
(in /root/rails_projects/sample)
rake aborted!
uninitialized constant Rake::DSL
/usr/local/lib/ruby/1.9.1/rake.rb:2482:in `const_missing'
(後略)
⇒上記エラー対応のためGemfile修正
[root@rails01 sample]# vi Gemfile
[root@rails01 sample]# head Gemfile
source 'http://rubygems.org'
gem 'rails', '3.1.0'
# add 20110919
gem 'therubyracer'
gem 'rake', '0.8.7'
# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'
[root@rails01 sample]# bundle update
Fetching source index for http://rubygems.org/
Using rake (0.8.7)
Using multi_json (1.0.3)
(後略)
⇒再びデータベース作成
[root@rails01 sample]# rake db:create
(in /root/rails_projects/sample)
[root@rails01 sample]# mysqlshow
+--------------------+
| Databases |
+--------------------+
| information_schema |
| mysql |
| sample_development |
| sample_test |
| test |
+--------------------+
データベースが作成された!!
■Webサーバ起動
[root@rails01 sample]# rails s
=> Booting WEBrick
=> Rails 3.1.0 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2011-09-19 22:43:01] INFO WEBrick 1.3.1
[2011-09-19 22:43:01] INFO ruby 1.9.2 (2011-07-09) [x86_64-linux]
[2011-09-19 22:43:01] INFO WEBrick::HTTPServer#start: pid=12327 port=3000
または、
[root@rails01 sample]# rails s > log/WEBrick.log &
[1] 25595
■ブラウザで確認
http://192.168.1.14:3000/
2011年9月18日日曜日
CentOS5.7バンドルのMySQL
★RubyOnRailsのデータベースとしてMySQLを準備 ■OSバンドルのmysqlモジュール確認 [root@rails01 ~]# 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@rails01 ~]# yum 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 Is this ok [y/N]: y 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.1 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 Is this ok [y/N]: y 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@rails01 ~]# rpm -qa | grep mysql libdbi-dbd-mysql-0.8.1a-1.2.2 mysql-5.0.77-4.el5_6.6 mysql-devel-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-5.0.77-4.el5_6.6 ■データベース初期化 [root@rails01 ~]# /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 rails01 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@rails01 ~]# mysqlshow +--------------------+ | Databases | +--------------------+ | information_schema | | mysql | | test | +--------------------+ ⇒停止 [root@rails01 ~]# /etc/init.d/mysqld stop MySQL を停止中: [ OK ]
2011年9月17日土曜日
CentOS5.7インストールパッケージ
★RubyOnRails用として仮想サーバをCentOSで構築。 ⇒MySQLはOSバンドルを利用予定。 ⇒RubyおよびRailsは最新版をインストール予定。 ■OSインストール時のパッケージ選択 ----------------------------------------------------------- 【デスクトップ環境】 ■ GNOMEデスクトップ環境 □ KDE(Kデスクトップ環境) 【アプリケーション】 □ Emacs □ Office/生産性 ■ エディタ ■ グラフィカルインターネット ■ グラフィクス □ ゲームと娯楽 ■ サウンドとビデオ □ テキストベースのインターネット □ 技術系と科学系 □ 著作権と発行 【開発】 □ GNOMEソフトウェア開発 ■ Java開発 □ KDEソフトウェア開発 □ Ruby □ Xソフトウェア開発 ■ レガシーなソフトウェアの開発 ■ 開発ツール ■ 開発ライブラリ 【サーバー】 □ DNSネームサーバー ■ FTPサーバー ■ MySQLデータベース □ PostgreSQLデータベース ■ Webサーバー ■ Windowsファイルサーバー ■ サーバー設定ツール □ ニュースサーバー □ ネットワークサーバー □ メールサーバー □ レガシーなネットワークサーバー □ 印刷サポート 【ベースシステム】 ■ Java ■ OpenFabrics Enterprise ディストリビューション ■ X Window System ■ システムツール □ ダイヤルアップネットワークサポート ■ ベース ■ レガシーなソフトウェアのサポート ■ 管理ツール 【仮想化】 □ KVM □ 仮想化 【クラスタリング】 □ クラスタリング 【クラスタストレージ】 □ クラスタストレージ 【言語】 ■ 日本語のサポート
登録:
コメント (Atom)