系统及环境
系统:Red Hat Enterprise Linux Server release 5.4 (Tikanga)
环境:已预装ruby 1.8.5
友情提示:Ubuntu下安装nginx时可能会出现依赖包没有正确安装的情况。要去手工安装一些包。
具体步骤
1. ruby安装
下载源代码包到本地Linux主机,然后解压缩,进入该目录,进行配置,编译和安装,依次执行(提示没有权限时加sudo):
l tar xzvf ruby-1.8.7.tar.gz
l cd ruby-1.8.7
l sudo ./configure –prefix=/usr/local/ruby
l sudo make && sudo make install
2. 环境配置
安装好以后,执行ruby –v。显示的仍然是ruby 1.8.5。执行env发现环境变量/usr/bin优先了。而ruby正好在/usr/bin下。所以刚编译安装的目录/usr/local/ruby/bin应该加在系统PATH前面。
修改操作系统PATH路径,加入/usr/local/ruby/bin:
export PATH=/usr/local/ruby/bin:$PATH
执行完以后再执行ruby –v。显示了ruby 1.8.7
3. gem和rails安装
下载gem源码。然后依次执行:
l tar xzvf rubygems-1.5.2.tgz
l cd rubygems-1.5.2/
l ruby setup.rb
安装rails就简单了。sudo gem install rails
4. nginx安装
先安装passenger:
sudo gem install passenger
安装好后执行:
sudo passenger-install-nginx-module
选择3:Learn how to deploy your application,会提示是否自动下载nginx。选择1:是
安装nginx时会提示安装目录:输入/opt/nginx/
至此,rails环境搭建完成
5. 获取代码
执行:svn co http:// ######
将代码checkout到rails应用目录
6. 配置
复制config/database.yml.example为config/database.yml。修改数据库配置。然后配置nginx。编辑/opt/nginx/conf/nginx.conf。添加:
http{
...
passenger_root /usr/local/passenger;
passenger_ruby /usr/local/bin/ruby;
server {
listen 80;
server_name beta.twork.taobao.net;
root /Users/freetest/public; #这里根据不同的用户,目录不同
passenger_enabled on;
rails_env production;
}
...
}
现在启动nginx还会报nobody无法取得某些目录的写入权限。因为nginx默认为nobody启动的。可以有两个方法:
1、 将应用和应用目录下所有文件夹和文件都置为权限777。执行 chmod 777 –R 应用目录
2、 将nginx的启动用户设置为具有操作应用目录的用户。如root(不建议)或者用户本身。具体做法是更改/opt/nginx/conf/nginx.conf第一行。user 用户名 组名
测试下环境:sudo /opt/nginx/sbin/nginx
启动好nginx后自动会把passenger启动起来。在浏览器就可以访问了
分享到:
相关推荐
NULL 博文链接:https://wuhuizhong.iteye.com/blog/870331
您需要与Vagrant和Chef一起启动一个新的Rails / Nginx / Passenger / Mysql项目。 只需克隆这个 repo,改变原点并输入vagrant up ###我要安装什么(和厨师一起)? Ruby 2.2.0 (rbenv) rails(最新的稳定版本)...
本人学习ruby on rails 的开发和部署过程中的环境搭建的笔记 基本涵盖了ruby开发中用到的所有软件的安装 也给自己留个存档
rvm nginx passenger rails配置服务器.docx
rails-nginx-passenger-ubuntu, 关于如何在 Nginx 8.04服务器上启动和运行和乘客的说明 rails-nginx-passenger-ubuntu我关于用 ubuntu 。Nginx 。乘客和mysql建立 Rails的简单制作服务器的笔记。别名echo"alias ll='...
在没有RVM或rbenv的Ubuntu 14.04上的Rails,PostgreSQL带Passenger + Nginx ssh-copy-id -i ~/.ssh/id_rsa.pub root@SERVER scp rails-passenger-postgres-nginx root@SERVER:/root/rails-passenger-postgres-...
myplaceonline_posixcubes 使用posixcube.sh使用haproxy负载均衡器(前端),nginx + passenger Rails服务器(web),postgresql数据库(数据库)以及更多(elasticsearch,数据库备份,rsyslog服务器等)构建完整的...
在Ubuntu 14.04 LTS上使用Passenger 5 / Nginx部署Sinatra / Rails 4应用程序的命令列表。 我还在博客上写了一篇文章(针对初学者),详细说明了每个步骤-http: 如果您遇到困难并需要任何帮助,请在该帖子上发表...
Easy Deploy Rails 5 Application Server ( Nginx 1.10、Passenger 5、Ruby 2.3.1 ) ; 快速部署 Rails 5 伺服器
WebFaction 私有应用程序栈shell 脚本webfaction.sh将自动构建和配置您自己的私有Ruby on Rails堆栈。 它是为用户编写的,但相当通用。 假定目录$HOME/logs/user和$HOME/webapps/$APP_NAME存在。提供什么混帐sqlite ...
我们自己使用Phusion Passenger( mod_rails ),但您也可以使用Thin,Puma或Unicorn。 可以为Nginx或Apache安装Phusion Passenger,您可以选择最喜欢的一种。 安装因您的发行版而异,因此请查看其或。 设置Web...
ansible-role-passenger:Ansible角色-Nginx乘客
Deprec-2.x是对项目的完整重写,可以实现以下目的: 支持Capistrano 2 生成的配置文件存储在本地以启用编辑和版本控制支持更多服务(心跳,nagios,nginx,ntp,postfix等) 多个Rails部署选项(Passenger + Apache...
来自 Github 的 Docker Nginx RubyApp 基于passenger:baseimage 的Docker 镜像,它会拉出一个github 存储库(仅限于可选的子文件夹)并启动一个ruby 乘客应用程序,例如rails 或sinatra 环境变量: GITHUB_REPO...
奖励1 :关于SSL的最安全的nginx配置之一,能够在达到A级奖励2 :支持在使用gem websocket-rails和passenger时自动启动websocket服务器。 unicornherder ,由主管监控(在9001端口运行其Web界面),以管理unicorn...
nginx_passenger 节点js 狮身人面像 属性 对于Sharetribe Cookbok 这些是我们拥有的所有属性及其默认值。 他们的名字很不言自明,因此只需通读即可。 default[:sharetribe] = { :env => 'development', # used...
奇美拉后端 介绍 后端是一个 100% REST API,允许来自任何前端(Web、... 它是用 Rails 编写的,专为使用Passenger 的Web 服务器设计(Nginx 用于开发盒。)它还考虑到测试/行为驱动开发,使用默认的Rails 测试套件。