在snow Leopard上搭建基于ree+nginx+passenger的rails3开发环境_Ruby_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > Ruby > 在snow Leopard上搭建基于ree+nginx+passenger的rails3开发环境

在snow Leopard上搭建基于ree+nginx+passenger的rails3开发环境

 2010/11/17 22:56:57  topbad  http://cngithub.javaeye.com  我要评论(0)
  • 摘要:在这里,写一下一个纯净版的操作系统搭建rails3开发环境的全部步骤。备忘。一,一般性工具,可略过不看。1,安装textmate,help菜单下面的enhancedterminalusage,创建链接。2,安装iTerm2,用于多窗口操作shell3,安装navicatpremium,用于操作mysql数据库,也可用phpmyadmin。4,安装虚拟机以及相应操作系统windows,建立sqlserver2005Express数据库,用于与windows下的老版本数据库对接。5
  • 标签:rails3开发环境

在这里,写一下一个纯净版的操作系统搭建rails3开发环境的全部步骤。备忘。

?

一,一般性工具,可略过不看。

?

1,安装textmate,help菜单下面的enhanced terminal usage ,创建链接。

?

2,安装iTerm2,用于多窗口操作shell

?

3,安装navicat premium,用于操作mysql数据库,也可用phpmyadmin。

?

4,安装虚拟机以及相应操作系统windows,建立sqlserver2005 Express数据库,用于与windows下的老版本数据库对接。

?

5,版本控制与bug跟踪:公司内部项目,请登陆内部redmine,使用texmate的svn插件。开源项目则请登陆github等。

?

二,安装ror相关工具

?

* 请将xxx替换成你的用户名。

?

1,安装xcode开发环境

?

http://developer.apple.com/technologies/xcode.html

?

有一次安装的时候卡在中途,退出重启操作系统即可。

?

2,安装git

?

http://code.google.com/p/git-osx-installer/

?

3,安装homebrew

?

http://github.com/mxcl/homebrew?

?

ruby -e "$(curl -fsSL https://gist.github.com/raw/323731/install_homebrew.rb)"

?

4,安装mysql

?

brew install mysql

?

然后,初始化与启动mysql

?

mysql_install_db

mysql.server start

?

随操作系统自动启动mysql

?

一个使用可视化界面操作的方法是,从mysql官网下载mysql-5.1.51-osx10.6-x86_64.dmg

?

加载,打开MySQLStartupItem.pkg与MySQL.prefPane进行配置。这样mysql就可以自动随机启动。

?

另一个办法则是写一个配置文件,可参考:

?

sudo launchctl load -w /Library/LaunchDaemons/com.mysql.mysqld.plist

?

http://www.javaeye.com/wiki/OSX/1632-osx-startup-script

?

http://blog.nroed.com/2010/10/13/mac-os-%E4%B8%8B%E5%BC%80%E6%9C%BA%E5%90%AF%E5%8A%A8mysql/

?

5,安装imagemagick

?

brew install imagemagick?

?

6,安装rvm(ruby版本管理工具

?

安装rvm可以直接使用作者的网址的快捷安装方法。

?

参考:http://rvm.beginrescueend.com/

?

使用一句话命令:

?

bash < <( curl http://rvm.beginrescueend.com/releases/rvm-install-head )

?

安装rvm的时候,记得按照命令符提示做一些修改。

?

修改配置文件,mate ?/etc/profile

?

在行尾插入:

?

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"

?

退出shell,并重新进入。

?

?

以上6个步骤是台湾xdite推荐的最佳实践,的确也是最佳实践,参考:http://blog.xdite.net/?p=1795

?

但是我需要安装的是ree与nginx【生产服务器上是这样的配置】,所以接下来的步骤开始不同。如果是使用apache与ruby开发的,请参考xdite推荐的最佳实践。

?

7,切换操作系统的ruby版本到ree之下。

?

直接通过rvm安装ree,

?

rvm install ree

?

也可以直接通过homebrew来安装ree。

?

brew install ruby-enterprise-edition

?

然后切换操作系统默认的ruby环境到ree,命令如下:

?

?rvm --default ree

?

8,创建ruby版本管理配置文件,GEM Set

?

如果一不小心,跳过此步骤,后续的操作系统引用的gem source就非常混乱。并且在安装的时候会提示错误。请务必操作此步骤。我的GEM Set命名为rails3。命令如下所示:

?

rvm gemset create rails3

?

加载rails3这个环境:

?

rvm ree@rails3

?

可通过 rvm info命令显示更多的关于rails3这个开发环境的信息。

?

9,开始安装nginx与passenger

?

安装nginx比较简单:

?

brew install nginx

?

然后,

?

gem install passenger

?

安装passenger的nginx模块。

?

passenger-install-nginx-module

?

打开nginx的默认安装目录:

?

mate /opt/nginx/

?

找到这个目录下面的conf目录的配置文件,nginx.conf

?

?

确保如下所示:

?

??http {

?? ? ?...

?? ??passenger_root /Users/xxx/.rvm/gems/ree-1.8.7-2010.02/gems/passenger-3.0.0;

?? ? ?passenger_ruby /Users/xxx/.rvm/wrappers/ree-1.8.7-2010.02/ruby;

?? ? ?...

??}

?

passenger_ruby如果不是指向ree的ruby解释器,会导致之后的gem源丢失问题。请务必确保此处指向的ruby与你所使用的ruby环境中的一致,可通过 rvm info命令查看现在所使用的ruby位置与版本。

?

按照安装提示修改nginx的配置文件,在server配置节,倒数第二行增加:

?

?? server {

?? ? ?listen 80;

?? ? ?server_name www.yourhost.com;

?? ? ?root /somewhere/public; ? # <--- be sure to point to 'public'!

?? ? ?passenger_enabled on;

?? }

?

重启nginx

?

sudo /opt/nginx/sbin/nginx -s reload

?

此时可将nginx链接到profile或者bashrc文件中过去,精简命令。

?

alias nst='ps aux | grep nginx'

alias sn='echo start nginx; sudo /opt/nginx/sbin/nginx ; nst'

alias kn='echo stop nginx; sudo kill `cat /opt/nginx/logs/nginx.pid` ; nst '

alias rn='kn ; sn'

?

#sn = start nginx

#kn = kill nginx

#rn = restart nginx

?

记得修改host文件,mate /etc/hosts

?

增加:127.0.0.1 www.yourhost.com

?

*更多关于passenger的nginx用法可以参考向导文件:

?

http://modrails.com/documentation/Users%20guide%20Nginx.html

?

*更多关于nginx的配置文件写法可以参考:

?

http://wiki.nginx.org/NginxChs

?

nginx的passenger模块默认是生产模式,请更改。

?

?

示范如下:

?

?? server {

?? ? ?listen 80;

?? ? ?server_name?www.yourhost.com;

?? ? ?root /users/xxx/projects/test-project/public; ? # <--- be sure to point to 'public'!

?? ? ?passenger_enabled on;

?? ? ?rails_env development;

?? }

?

?

10,安装ree下面的gem,rails3,然后再bundle install.

?

gem update --system

gem install rake

gem install rails

?

cd /users/xxx/projects/test-project

bundle install

?

如果碰到,Could not find bcrypt-ruby-2.1.2 in any of the sources等类似错误,直接在该rvm环境之下:

?

gem install bcrypt-ruby

?

请通过rvm info命令检查你所使用的ruby,gem等版本信息是否正确。

?

"/Users/xxx/.rvm/gems/ree-1.8.7-2010.02@rails3"

?

@符号表示的你个性化的gem set。这样一来,就可以创建多个ruby开发环境进行调试。切换的时候,相应地变更一下不同web服务器的ruby解释路径即可.

?

更多参考:

?

http://binarymuse.net/2010/08/07/ruby-192-and-rails-3-rc-on-os-x/

http://blog.xdite.net/?p=1795

http://ihower.tw/rails3/firststep.html

http://modrails.com/documentation/Users%20guide%20Nginx.html

http://stackoverflow.com/questions/3844561/rails-3-installation-problems-could-not-find-bcrypt-ruby-2-1-2

http://wiki.nginx.org/NginxChs

?

  • 相关文章
发表评论
用户名: 匿名