rubyインストールから〜
基本的にportではバージョンが古い(安定版)のでインストールしません。ソースからコンパイルしていきます。
1.rubyインストール
http://www.ruby-lang.org/ja/downloads/からruby-1.9.0-2.tar.gzを取得
sudo tar xvzf ruby-1.9.0-2.tar.gz cd ruby-1.9.0-2 sudo ./configure sudo make sudo make install
2.mysqlインストール
http://www-jp.mysql.com/からmysql-6.0.4-alpha.tar.gzをダウンロード
sudo tar xvzf mysql-6.0.4-alpha.tar.gz cd mysql-6.0.4-alpha sudo ./configure sudo make sudo make install
3.rubygemインストール
sudo wget http://rubyforge.org/frs/download.php/38646/rubygems-1.2.0.tgz sudo tar xvf rubygems-1.2.0.tgz cd rubygems-1.2.0 sudo ./configure sudo make sudo make install
4.railsインストール
sudo gem install rails
5.mysqlアダプタインストール
通常のgemインストールだと、エラーが発生したので色々しらべて以下を実施で解決。
sudo gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config
6.mongrelインストール
sudo gem install mongrel
7.mongrel_clusterインストール
sudo gem install mongrel_cluster
※ちなみにgemはバージョン指定してインストールできます
sudo gem install rails --version 1.2.6
mongrel_clusterのbaseをコピーする
sudo cp /Library/Ruby/Gems/1.8/gems/mongrel_cluster-1.0.5/resources/mongrel_cluster /etc/
一部書き換えました
<span style="color:#FF0000;">CONF_DIR=/etc/mongrel</span> <span style="color:#FF0000;">PID_DIR=/usr/local/hoge/tmp/pids/</span> <span style="color:#FF0000;">USER=root</span> <span style="color:#FF0000;">GROUP=wheel #これ追加</span> RETVAL=0 # Gracefully exit if the controller is missing. which mongrel_cluster_ctl >/dev/null || exit 0 # Go no further if config directory is missing. [ -d "$CONF_DIR" ] || exit 0 case "$1" in start) # Create pid directory mkdir -p $PID_DIR <span style="color:#FF0000;"># chown $USER:$USER $PID_DIR</span> <span style="color:#FF0000;"> chown $USER:$GROUP $PID_DIR</span> mongrel_cluster_ctl start -c $CONF_DIR RETVAL=$? ;; stop) mongrel_cluster_ctl stop -c $CONF_DIR RETVAL=$? ;; restart) mongrel_cluster_ctl restart -c $CONF_DIR RETVAL=$? ;; status) mongrel_cluster_ctl status -c $CONF_DIR RETVAL=$? ;; *) echo "Usage: mongrel_cluster {start|stop|restart|status}" exit 1 ;; esac exit $RETVAL
mongrel_cluster.yml作成
sudo vi /etc/mongrel/mongrel_cluster.yml
user: root # 作成したユーザ group: wheel # 作成したグループ port : 8000 # このポートからはじめる cwd: /usr/local/hoge # アプリケーションを置いている場所 log_file: log/mongrel.log # ログファイル名 environment: production # development or production or test pid_file: tmp/pids/mongrel.pid # pidのありか servers: 2 # プロセス起動数
これで起動するはず
sudo chmod 755 /etc/mongrel_cluster sudo /etc/mongrel_cluster start
起動確認
ps -ef |grep ruby
以下のように表示されればOK
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby /usr/bin/mongrel_rails \ start -d -e production -c /usr/local/hoge --user root --group wheel -p 8000 \ -P tmp/pids/mongrel.8000.pid -l log/mongrel.8000.log