如何在Ubuntu12.04上从源代码安装RubyonRails

来自菜鸟教程
跳转至:导航、​搜索


状态: 已弃用

本文介绍了不再受支持的 Ubuntu 版本。 如果您当前正在运行运行 Ubuntu 12.04 的服务器,我们强烈建议您升级或迁移到受支持的 Ubuntu 版本:

原因: Ubuntu 12.04 已于 2017 年 4 月 28 日终止生命周期 (EOL) and no longer receives security patches or updates. This guide is no longer maintained.

请参阅:
本指南可能仍可用作参考,但可能不适用于其他 Ubuntu 版本。 如果可用,我们强烈建议使用为您正在使用的 Ubuntu 版本编写的指南。 您可以使用页面顶部的搜索功能来查找更新的版本。


关于 Ruby on Rails

Ruby on Rails 是一个应用程序堆栈,它为开发人员提供了一个快速创建各种 Web 应用程序的框架。

Rails 可以安装在带有各种包的虚拟专用服务器上,但也可以从源代码手动下载。 本教程将介绍手动安装。

设置

本教程中的步骤要求用户具有 root 权限。 您可以在第 3 步和第 4 步的 使用 Ubuntu 的初始服务器设置中查看如何进行设置。

第一步——下载 Ruby

在开始之前,请确保您的存储库是最新的:

sudo apt-get update

更新完成后,我们可以开始 ruby 下载:

为 ruby 下载创建一个目录:

mkdir ~/downloads

然后切换到该目录:

cd ~/downloads

并开始下载 ruby:

sudo wget ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p0.tar.gz

请记住,您始终可以从 Ruby on Rails 网站访问最新版本的 ruby:http://rubyonrails.org/download

下载 ruby 后,将依赖项下载到虚拟服务器。 这些将有助于以后使安装尽可能顺利。

sudo 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 nodejs subversion

在您的 VPS 上安装依赖项后,解压缩 ruby 文件:

tar xvfz ruby-1.9.3-p0.tar.gz

该过程完成后,进入下载的目录。

cd ruby-1.9.3-p0

第二步——安装 Ruby

在 Ruby 目录中,我们必须运行三个标准命令来安装软件。

第一的:

./configure

“配置”生成 make 文件并检查服务器是否具有所有必需的依赖项。 之后,仍然在目录中,您需要运行“make”命令:

make

这可能需要更长的时间。 完成后,使用 make install:

sudo make install

第三步——安装 Gems

彻底解压 ruby 代码后,下一步就是处理 ruby gem。 由于您从源代码安装了 ruby 包,因此应该已经下载了 gem。 但是,您可能需要更新它们:

sudo gem update --system

第四步——安装导轨

gems全部更新后,可以通过设置rails来完成手动安装:

sudo gem install rails

这样,您的服务器上就安装了 Ruby on Rails。

第五步——在线查看 Rails

安装 Ruby on Rails 后,您就可以开始将您的 Ruby 应用程序上线了。

要访问 Ruby 服务器,您只需创建一个新的 Ruby on Rails 项目:

rails new project_name

进入该目录:

 cd project_name

然后打开rails服务器:

rails server

第六步——结果:访问你的 Ruby 服务器

安装 Ruby on Rails 后,您可以通过访问您的域或 IP 地址(即。 12.34.56.789:3000).

该页面应类似于 this

太好了——您现在已经从源代码安装了 Ruby on Rails。

看更多

安装 Ruby on Rails 后,您可以继续 为您的站点创建 SSL 证书安装 FTP 服务器

埃特尔·斯维尔德洛夫