安装RVM,Ruby,Rails;布暑 passenger + nginx

    本文仅为作者本人经验之谈,可供参考。安装过程中,有问题可以加qq1403126229,我尽量回答(有空,并且我懂的话)

       本文可能不断更新,转载请注明出处www.cnblogs.com/kelby。谢谢。

=====================================================================================================

1.    你现在运行的是root 用户,我们需要新增一个用户,运行 sudo useradd -d /home/username -m -s /bin/bash –G sudo username

把username换成你自己的用户名。

 

2.    它会提示输入密码,确认密码-‘输入它们’,提示输入一些其它信息,忽略它们。直接‘回车’

 

3.    如果没有出现第2步,别担心。跟着做下面的,运行 passwd username 输入密码。运行 gpasswd –a username sudo 

运行 cd /home && mkdir username

运行 chown username /home/username  

切换到普通用户 su - username

 

=====================================================================================================

4.    到网上找ubuntu版本相同的下载源,更改下载源,运行sudo   vi /etc/apt/sources.list

 

5.    运行 sudo apt-get update ,使我们的资源最新的。

 

6.    安装一些基本包,运行sudo apt-get install build-essential git-core curl

 

7.    准备安装RVM,运行 sudo bash < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer )

 

8.    安装RVM,运行sudo bash < <(curl -sk https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)

 

9.    第8步进行后仔细看一下终端,会提示你安装RVM的一些依赖的包。运行 sudo apt-get install build-essential openssl libreadline6 libreadline6-dev curl git-core zlib1gzlib1g-dev libssl-dev libyaml-dev libsqlite3-0 libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev automake libtool bison subversion

 

10.   关闭终端,重新打开。运行 source .bash_profile

 

11.   运行 type rvm | head -1

如果显示 “rvm is a function”,表示安装成功了。为确保安全我们把username加入RVM组,运行 sudo usermod -a -G rvm username

 

12.   再次查看RVM需要的依赖,运行 rvm requirements  在终端会看到结果,这和第9步差不多,用sudo apt-get XXX 安装它们。

 

13.   要安装ruby 运行 rvm install1.9.2(可能需要一段时间)

 

14.   使用ruby 运行  rvm use1.9.2

 

15.   查看ruby的版本,运行 ruby -v

 

16.   将ruby1.9.2成为默认ruby版本(如果你现在或将来安装多个版本,推荐使用),运行 rvm use 1.9.2 --default

ok,现在我们有必要升级一下,运行 gem update –system

(注意:安装RVM,Ruby 失败的可以参考官网https://rvm.beginrescueend.com/rvm/install/  并且现在你可以安装Ruby 1.9.3 )

 

17.   安装rails, 运行 gem install rails (如果不成功,尝试VPN,SSH代理或者等待)

 

=====================================================================================================

18.   安装 passenger ,运行 gem install passenger

 

19.   安装好后,运行 passenger-install-nginx-module 它会一些说明的东西,看一下后直接按‘回车’

 

20.   它会问你安装nginx的模式,仔细看看。或者直接输入1,然后 按‘回车’

 

21.   1.如果安装缺少必备的东西,它会有提示!比如SSH的问题… …

用sudo apt-get  XXX 安装它们。

 

22.   2.如果不缺少东西,它会让你选择nginx的安装目录。直接‘回车’,它会提示你‘没有权限’,输入/home/username… ….它会提示你安装不了。出了什么问题了?!

 

  1. 解决办法,运行sudo chgrp rvm /opt/nginx;

sudo chown username /opt/nginx

再运行 passenger-install-nginx-module  ‘回车’再‘回车’,OK,到此为止,你安装好了。

 

=====================================================================================================

24.   运行 su – username 切换回普通用户。

 

25.   运行 sudo vi /opt/nginx/conf/nginx.conf 按照你上网找到的更改数据。在这里啰嗦一句,如果你的 root 选择在 /var/www 目录里,你得给username权限,运行 sudo chown –R username /var/www ;如果你的root 选择在 username目录下则可以省去这一步。

 

26.   创建启动脚本,运行 sudo vi /etc/init.d/nginx 复制你在网上找到的代码(找正式网站上的,如果你不懂里面代码什么意思的话)

 

27.   写你的rails 项目,把它放到25所对应的目录里。(相信你在网上已经看过这步怎么做了)

 

28.   修改rails 的环境,到/config/environments/production.rb文件,将config.assets.compile = false 改为 true

 

29.   Rails切换到生产模式,运行 rake db:migrate RAILS_ENV="production"

css, js可能要预编译,我们运行 RAILS_ENV=production bundle exec rails assets:precompile

 

=====================================================================================================

30.   如果网站运行情况不对(对,就不用看了),看看80端口使用情况,运行 netstat –ntpl  ,可能是apache 占用了端口,运行 sudo /etc/init.d/apache2 stop

或者直接删除apache,运行 sudo apt-get remove apache2

 

31.   使用过程中你可能需要停止nginx的运行,命令为 sudo killall -9 nginx

 

32.   重新启动nginx用命令sudo /opt/nginx/sbin/nginx

(一些基本的gem ,比如mysql,sqlite3, Postgresql… …等等包,你自己应该会下载的,我就不多写了)

 

 

 

 

 

posted @ 2011-10-24 20:48  kelby  阅读(974)  评论(1编辑  收藏  举报