前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何在Ubuntu上使用Passenger安装Rails和nginx

如何在Ubuntu上使用Passenger安装Rails和nginx

原创
作者头像
乌鸦
修改2018-07-26 14:19:04
3.5K0
修改2018-07-26 14:19:04
举报

介绍

Ruby on Rails为Web开发人员提供了一个快速创建各种Web应用程序的框架,而nginx是一个轻量级的高性能Web服务器软件。通过Phusion Passenger安装时,可以轻松配置这两个程序,以便在服务器上协同工作。

您可以作为具有sudo权限的用户在Ubuntu服务器上运行本教程。没有服务器的用户可以购买和使用腾讯云服务器或者直接在腾讯云实验室Ubuntu服务器上机安装Rails和Nginx 。

第一步,使用RVM安装Ruby

在我们做任何其他事情之前,我们应该进行快速更新,以确保我们下载到虚拟服务器的所有软件包都是最新的:

代码语言:txt
复制
sudo apt-get update

完成后,我们就可以开始在Ubuntu服务器上安装RVM(Ruby Version Manage)。这是一个很棒的程序,可以让你在一个系统上使用多个版本的Ruby。但是,我们将使用它来安装最新版本的Ruby。

要安装RVM,请打开终端并输入以下命令:

代码语言:txt
复制
curl -L get.rvm.io | bash -s stable

安装完成后,加载RVM。

代码语言:txt
复制
source ~/.rvm/scripts/rvm

为了工作, RVM 有一些自己的依赖需要安装。您可以看到这些内容:

代码语言:txt
复制
rvm requirements

在RVM向您显示的文本中,请查找此段落。

代码语言:txt
复制
Additional Dependencies:
# For Ruby / Ruby HEAD (MRI, Rubinius, & REE), install the following:
  ruby: /usr/bin/apt-get install build-essential openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev automake libtool bison subversion

要使您的系统与所有必需的依赖项保持同步,只需按照说明操作即可。

代码语言:txt
复制
rvmsudo /usr/bin/apt-get install build-essential openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev automake libtool bison subversion

第二步,安装Ruby

一旦使用RVM,安装Ruby很容易。

代码语言:txt
复制
rvm install 1.9.3

Ruby现已安装。但是,由于我们通过具有各种Ruby版本的程序访问它,因此我们需要告诉系统默认使用1.9.3。

代码语言:txt
复制
rvm use 1.9.3 --default

第三步,安装RubyGems

下一步确保我们拥有Ruby on Rails所需的所有组件。我们可以继续使用RVM来安装gems;

将此行输入终端。

代码语言:txt
复制
rvm rubygems current

第四步,安装Rails

一旦完成所有设置,就可以安装Rails了。

首先,打开终端并输入:

代码语言:txt
复制
gem install rails

这个过程可能需要一段时间,请耐心等待。完成后,您将在虚拟服务器上安装Ruby on Rails。

完成后,您将全部使用Ruby on Rails设置,现在可以将它连接到nginx。

第五步,安装Passenger

Passenger是在nginx或apache上部署Rails的有效而简单的方法。在这个例子中,我们将运行nginx安装。

安装Ruby on Rails后,继续安装passenger。

代码语言:txt
复制
gem install passenger

第六步,安装nginx

这里是Passenger真正的亮点。由于我们希望在nginx服务器上安装Rails,我们只需要在终端中再输入一行:

代码语言:txt
复制
rvmsudo passenger-install-nginx-module

Passenger首先检查安装所需的所有依赖项。如果您错过任何一个,Passenger将通过Ubuntu上的apt-get安装程序让您知道如何安装它们。

下载所有缺少的依赖项后,重新启动安装。输入:passenger-install-nginx-module再次进入命令行。

Passenger为用户提供自动设置或自定义设置之间的选择。按1并输入以选择推荐的简易安装。

第七步,启动nginx

Passenger需要大约五到十分钟使用Ruby on Rails来安装,配置和优化nginx。

完成后,它将告诉您有关对nginx配置文件所做的更改以及如何在虚拟服务器上部署Ruby on Rails应用程序。

最后一步是启动nginx,因为它不会自动执行。

代码语言:txt
复制
 sudo service nginx start

nginx现在开启了。如果您将其指向http:// youripaddress/,您可以在浏览器中看到屏幕上显示令人兴奋的“Welcome to nginx”。

第八步,将Nginx连接到您的Rails项目

安装rails后,打开nginx配置文件

代码语言:txt
复制
 sudo nano /opt/nginx/conf/nginx.conf

将root设置为新rails项目的公共目录。

你的配置应该是这样的:

代码语言:txt
复制
server { 
listen 80; 
server_name example.com; 
passenger_enabled on; 
root /var/www/my_awesome_rails_app/public; 
}

创建新的rails项目,请按照下列步骤操作:

  • 如果您还没有安装NodeJs:
代码语言:txt
复制
$ sudo apt-get install nodejs
  • 在首选目录中创建新的rails应用程序:
代码语言:txt
复制
$ rails new my_awesome_rails_app

如果您使用的是CentOS系统,可以参考腾讯云开发者实验室在 Linux 上部署 Ruby On Rails 环境,腾讯云社区也提供Ruby中文开发者手册nginx中文开发文档,欢迎使用。


参考文献:《How To Install Rails and nginx with Passenger on Ubuntu》

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 介绍
  • 第一步,使用RVM安装Ruby
  • 第二步,安装Ruby
  • 第三步,安装RubyGems
  • 第四步,安装Rails
  • 第五步,安装Passenger
  • 第六步,安装nginx
  • 第七步,启动nginx
  • 第八步,将Nginx连接到您的Rails项目
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档