如何在 Linux 中安装 Ruby On Rails

本分步指南向您简要介绍了 Ruby on Rails 然后指导您完成在 Linux 操作系统中安装 Ruby on Rails 的步骤。 最后,您将学习如何创建一个新的 Rails 应用程序并通过 Web 浏览器对其进行测试。

内容

  1. Ruby on Rails 简介
  2. 1. 在 Linux 中安装 Ruby on Rails
    1. 1.1. 在 Linux 中安装 Ruby
    2. 1.2. 安装 SQLite
    3. 1.3. 安装 Node.js
    4. 1.4. 安装纱线
    5. 1.5. 安装导轨
  3. 2. 创建一个新的 Rails 应用程序
  4. 3. 使用 MySQL 和 Rails 应用程序
  5. 4. 在 Rails 应用程序中使用 PostgreSQL
    1. 5. 移除 RVM
      1. 结论

Ruby on Rails 简介

Ruby on Rails 或 Rails,是一种用 Ruby 编程语言编写的开源 Web 应用程序开发框架。 Rails 是一个服务器端 Web 应用程序框架,它促进了 Web 标准的使用,例如 JSON 或者 XML 用于数据传输和 HTML, CSSJavaScript 用于用户界面。

使用 Rails,我们可以用更少的代码构建现代 Web 应用程序,同时完成比其他语言和框架更多的任务。 成千上万的应用程序是使用 Rails 构建的。 一些流行的应用程序是 Basecamp、GitHub、HEY、Shopify、Airbnb、Twitch、SoundCloud、Hulu、Zendesk 等等。

Ruby on Rails 是由 大卫·海涅迈尔·汉森,丹麦程序员、赛车手和畅销书作家。 Hansson 于 2004 年 7 月首次将 Rails 作为开源发布。当 Apple 宣布将随 Mac OS X v10.5 发布 Ruby on Rails 时,Rails 开始流行。

1. 在 Linux 中安装 Ruby on Rails

首先,更新你的Linux系统。

如果您使用的是 Debian 及其衍生产品,例如 Ubuntu,则可以使用 apt 像下面这样:

$ sudo apt update
$ sudo apt upgrade

在 Fedora, RHEL 及其克隆版本,如 CentOS、AlmaLinux:

$ sudo dnf --refresh upgrade

要更新 openSUSE,请运行:

$ sudo zypper update
$ sudo zypper upgrade

重新启动系统以应用和完成更新:

$ sudo reboot

在安装 Rails 之前,请确保您已安装以下先决条件。

  • 红宝石 – 一种动态的开源编程语言,专注于简单性和生产力。
  • SQLite3 – 它是 Rails 的默认数据库后端。 当我们安装 Ruby 时,它将作为要求安装。
  • 节点.js – 一个开源、跨平台、JavaScript 运行时环境,用于构建可扩展的网络应用程序。
  • – 用于安装和管理 JavaScript 程序的现代包管理器。

1.1. 在 Linux 中安装 Ruby

Ruby 被打包用于许多 Linux 发行版,并在它们的默认存储库中可用。 因此,您可以使用发行版的默认包管理器进行安装。 但是,存储库中可用的 Ruby 版本可能有点旧。 因此,您可以使用任何第三方安装程序和 Ruby 管理器。

许多 Ruby 用户使用 Ruby 管理器来管理多个 Ruby。 它们允许在 Ruby 版本之间轻松甚至自动切换。 出于本指南的目的,我们将使用 虚拟机.

RVM,代表 电阻乌比 错误 anager,允许您在 Linux 系统上安装和管理 Ruby 的多个安装。 它还可以管理不同的 gemset。 它可用于 macOS、Linux 或其他类似 UNIX 的操作系统。

安装添加 RVM GPG 密钥所需的 GPG2 包:

$ sudo apt install gnupg2

然后通过在终端中输入以下命令来导入 RVM GPG 密钥:

$ gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

添加密钥后,运行以下命令在Linux中安装RVM:

$ curl -sSL https://get.rvm.io | bash -s stable

示例输出:

Downloading https://github.com/rvm/rvm/archive/1.29.12.tar.gz Downloading https://github.com/rvm/rvm/releases/download/1.29.12/1.29.12.tar.gz.asc gpg: Signature made Fri Jan 15 18:46:22 2021 UTC gpg:                using RSA key 7D2BAF1CF37B13E2069D6956105BD0E739499BDB gpg: Good signature from "Piotr Kuczynski <[email protected]>" [unknown] gpg: WARNING: This key is not certified with a trusted signature! gpg:          There is no indication that the signature belongs to the owner. Primary key fingerprint: 7D2B AF1C F37B 13E2 069D  6956 105B D0E7 3949 9BDB GPG verified '/home/ostechnix/.rvm/archives/rvm-1.29.12.tgz' Installing RVM to /home/ostechnix/.rvm/     Adding rvm PATH line to /home/ostechnix/.profile /home/ostechnix/.mkshrc /home/ostechnix/.bashrc /home/ostechnix/.zshrc.     Adding rvm loading line to /home/ostechnix/.profile /home/ostechnix/.bash_profile /home/ostechnix/.zlogin. Installation of RVM in /home/ostechnix/.rvm/ is almost complete:    * To start using RVM you need to run `source /home/ostechnix/.rvm/scripts/rvm`     in all your open shell windows, in rare cases you need to reopen all shell windows. Thanks for installing RVM ? Please consider donating to our open collective to help us maintain RVM.  ?  Donate: https://opencollective.com/rvm/donate
在 Linux 中安装 RVM

RVM 安装基本完成。 在安装 Ruby 之前,您需要运行最后一步!

正如您在上面的输出中可能已经注意到的那样,有一行表示 – 要开始使用 RVM,您需要运行 `source /home/ostechnix/.rvm/scripts/rvm`.

所以让我运行以下命令来启动 RVM:

$ source /home/ostechnix/.rvm/scripts/rvm

代替 /home/ostechnix 用你自己的用户名。 上述命令将设置 RVM 环境路径。

如果您使用的是基于 RHEL 的系统(例如 CentOS),您可能需要运行以下命令将 RVM 添加到 $PATH.

# source /etc/profile.d/rvm.sh

我们刚刚安装了 RVM 并将其添加到 $PATH. 现在让我们为 RVM 安装必要的要求。

要安装 RVM 要求,只需运行:

$ rvm requirements

示例输出:

Checking requirements for ubuntu.  Installing requirements for ubuntu.  Updating system…  Installing required packages: g++, gcc, autoconf, automake, bison, libc6-dev, libffi-dev, libgdbm-dev, libncurses5-dev, libsqlite3-dev, libtool, libyaml-dev, make, pkg-config, sqlite3, zlib1g-dev, libgmp-dev, libreadline-dev, libssl-dev…………………………..  Requirements installation successful.

上面的命令安装所有必需的包,包括 SQLite。 是时候使用 RVM 安装 Ruby 了。

首先,让我们使用以下命令检查可用的 Ruby 版本:

$ rvm list known

示例输出:

MRI Rubies  [ruby-]1.8.6[-p420]  [ruby-]1.8.7[-head] # security released on head  [ruby-]1.9.1[-p431]  [ruby-]1.9.2[-p330]  [ruby-]1.9.3[-p551]  [ruby-]2.0.0[-p648]  [ruby-]2.1[.10]  [ruby-]2.2[.10]  [ruby-]2.3[.8]  [ruby-]2.4[.10]  [ruby-]2.5[.8]  [ruby-]2.6[.6]  [ruby-]2.7[.2]  [ruby-]3[.0.0]  ruby-head [...]

在编写本指南时,最新的可用 Ruby 版本是 3.0.0.

要在 Linux 上使用 RVM 安装最新的 Ruby,请运行:

$ rvm install ruby

示例输出:

Searching for binary rubies, this might take some time.  Found remote file https://rvm_io.global.ssl.fastly.net/binaries/ubuntu/20.04/x86_64/ruby-3.0.0.tar.bz2  Checking requirements for ubuntu.  Requirements installation successful.  ruby-3.0.0 - #configure  ruby-3.0.0 - #download    % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current                                   Dload  Upload   Total   Spent    Left  Speed  100 26.7M  100 26.7M    0     0  1186k      0  0:00:23  0:00:23 --:--:-- 1307k  ruby-3.0.0 - #validate archive  ruby-3.0.0 - #extract  ruby-3.0.0 - #validate binary  ruby-3.0.0 - #setup  ruby-3.0.0 - #gemset created /home/ostechnix/.rvm/gems/[email protected]  ruby-3.0.0 - #importing gemset /home/ostechnix/.rvm/gemsets/global.gems…………………………….  ruby-3.0.0 - #generating global wrappers……..  ruby-3.0.0 - #gemset created /home/ostechnix/.rvm/gems/ruby-3.0.0  ruby-3.0.0 - #importing gemsetfile /home/ostechnix/.rvm/gemsets/default.gems evaluated to empty gem list  ruby-3.0.0 - #generating default wrappers……..
在 Linux 上使用 RVM 安装 Ruby

您还可以通过明确提及其版本来安装特定版本的 Ruby。 例如,以下命令将安装 Ruby 2.7.2 版本。

$ rvm install ruby-2.7.2

检查安装的 Ruby 版本:

$ ruby --version  ruby 3.0.0p0 (2020-12-25 revision 95aff21468) [x86_64-linux]

列出所有已安装的 Ruby 版本:

$ rvm list

示例输出:

 =* ruby-3.0.0 [ x86_64 ]  => - current  =* - current && default  * - default

如果您安装了多个 Ruby 版本,则可以设置默认的 Ruby 版本,如下所示:

$ rvm use 3.0.0 --default

1.2. 安装 SQLite

SQLite 是一个关系数据库管理系统,包含在 C 图书馆。 SQLite 是部署最广泛的数据库引擎。 它几乎无处不在,包括 Web 浏览器、操作系统和嵌入式系统。 Rails 使用 SQLite3 作为默认数据库。

当我们在上一步安装 RVM 要求时,SQLite 会自动安装。 所以让我们不要打扰 SQLite 的安装。

1.3. 安装 Node.js

一些 Rails 功能(例如资产管道)依赖于 JavaScript 运行时。 由于 Nodejs 提供了此功能,请按照以下链接中的说明进行安装。

  • 如何在 Linux 上安装 NodeJS

1.4. 安装纱线

Yarn 是一个 JavaScript 包管理器,是 NPM 的更快替代品。 将 Yarn 与 Rails 结合使用的优势在于,您可以方便地管理项目中的 CSS 和 JavaScript 库。 它的行为类似于 Ruby gems,但在前端领域。 Rails 支持 Yarn 开箱即用。

如果您还没有安装 Yarn,请参考以下指南。

  • 如何在 Linux 中安装和使用 Yarn 包管理器

1.5. 安装导轨

安装所有上述先决条件后,运行以下命令在 Linux 系统中安装 Ruby on Rails:

$ gem install rails
在 Linux 中安装 Ruby on Rails在 Linux 中安装 Ruby on Rails

使用以下命令检查已安装的 Rails 版本:

$ rails --version  Rails 6.1.3.2

例如,如果要安装特定的 Rails 版本 5.2.0,命令将是:

$ gem install rails -v 5.2.0

您可以通过使用以下命令搜索版本来列出所有可用的 Rails 版本:

$ gem search '^rails$' --all

在撰写本指南时,这些是可用的远程 gem:

*** REMOTE GEMS ***  rails (6.1.3.2, 6.1.3.1, 6.1.3, 6.1.2.1, 6.1.2, 6.1.1, 6.1.0, 6.0.3.7, 6.0.3.6, 6.0.3.5, 6.0.3.4, 6.0.3.3, 6.0.3.2, 6.0.3.1, 6.0.3, 6.0.2.2, 6.0.2.1, 6.0.2, 6.0.1, 6.0.0, 5.2.6, 5.2.5, 5.2.4.6, 5.2.4.5, 5.2.4.4, 5.2.4.3, 5.2.4.2, 5.2.4.1, 5.2.4, 5.2.3, 5.2.2.1, 5.2.2, 5.2.1.1, 5.2.1, 5.2.0, 5.1.7, 5.1.6.2, 5.1.6.1, 5.1.6, 5.1.5, 5.1.4, 5.1.3, 5.1.2, 5.1.1, 5.1.0, 5.0.7.2, 5.0.7.1, 5.0.7, 5.0.6, 5.0.5, 5.0.4, 5.0.3, 5.0.2, 5.0.1, 5.0.0.1, 5.0.0, 4.2.11.3, 4.2.11.2, 4.2.11.1, 4.2.11, 4.2.10, 4.2.9, 4.2.8, 4.2.7.1, 4.2.7, 4.2.6, 4.2.5.2, 4.2.5.1, 4.2.5, 4.2.4, 4.2.3, 4.2.2, 4.2.1, 4.2.0, 4.1.16, 4.1.15, 4.1.14.2, 4.1.14.1, 4.1.14, 4.1.13, 4.1.12, 4.1.11, 4.1.10, 4.1.9, 4.1.8, 4.1.7.1, 4.1.7, 4.1.6, 4.1.5, 4.1.4, 4.1.3, 4.1.2, 4.1.1, 4.1.0, 4.0.13, 4.0.12, 4.0.11.1, 4.0.11, 4.0.10, 4.0.9, 4.0.8, 4.0.7, 4.0.6, 4.0.5, 4.0.4, 4.0.3, 4.0.2, 4.0.1, 4.0.0, 3.2.22.5, 3.2.22.4, 3.2.22.3, 3.2.22.2, 3.2.22.1, 3.2.22, 3.2.21, 3.2.20, 3.2.19, 3.2.18, 3.2.17, 3.2.16, 3.2.15, 3.2.14, 3.2.13, 3.2.12, 3.2.11, 3.2.10, 3.2.9, 3.2.8, 3.2.7, 3.2.6, 3.2.5, 3.2.4, 3.2.3, 3.2.2, 3.2.1, 3.2.0, 3.1.12, 3.1.11, 3.1.10, 3.1.9, 3.1.8, 3.1.7, 3.1.6, 3.1.5, 3.1.4, 3.1.3, 3.1.2, 3.1.1, 3.1.0, 3.0.20, 3.0.19, 3.0.18, 3.0.17, 3.0.16, 3.0.15, 3.0.14, 3.0.13, 3.0.12, 3.0.11, 3.0.10, 3.0.9, 3.0.8, 3.0.7, 3.0.6, 3.0.5, 3.0.4, 3.0.3, 3.0.2, 3.0.1, 3.0.0, 2.3.18, 2.3.17, 2.3.16, 2.3.15, 2.3.14, 2.3.12, 2.3.11, 2.3.10, 2.3.9, 2.3.8, 2.3.7, 2.3.6, 2.3.5, 2.3.4, 2.3.3, 2.3.2, 2.2.3, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.4, 2.0.2, 2.0.1, 2.0.0, 1.2.6, 1.2.5, 1.2.4, 1.2.3, 1.2.2, 1.2.1, 1.2.0, 1.1.6, 1.1.5, 1.1.4, 1.1.3, 1.1.2, 1.1.1, 1.1.0, 1.0.0, 0.14.4, 0.14.3, 0.14.2, 0.14.1, 0.13.1, 0.13.0, 0.12.1, 0.12.0, 0.11.1, 0.11.0, 0.10.1, 0.10.0, 0.9.5, 0.9.4.1, 0.9.4, 0.9.3, 0.9.2, 0.9.1, 0.9.0, 0.8.5, 0.8.0)

将首先列出最新版本。

2. 创建一个新的 Rails 应用程序

Rails 由许多名为 generators 的脚本组成,这使您的应用程序开发更容易! 发电机之一是 新申请 用于创建新 Rails 应用程序的生成器。

创建一个名为的新 Rails 应用程序 ostechnixapp, 跑:

$ rails new ostechnixapp

这将在名为 ostechnixapp 的目录中创建一个名为 ostechnixapp 的 Rails 应用程序 ostechnixapp 并安装已经提到的 gem 依赖项 Gemfile 使用 bundle install.

创建后 ostechnixapp 应用程序,切换到其目录:

$ cd ostechnixapp/

该目录包含多个文件和子目录。 主要的子目录是 app,其中包含应用程序的控制器、模型、视图、帮助程序、邮件程序、通道、作业和资产。

要查看我们新创建的应用程序,让我们使用以下命令启动 Web 服务器:

$ bin/rails server

或者,

$ rails server

这将启动 彪马,默认与 Rails 一起分发的 Web 服务器。

要查看您的应用程序的运行情况,请打开您的 Web 浏览器并导航到 https://本地主机:3000. 您应该会看到 Rails 默认信息页面:

Rails 默认信息页面Rails 默认信息页面

如果你看到“耶!你在 Rails 上!” 页,恭喜! 你都准备好了!! Ruby on Rails 已在您的 Linux 系统上正确安装和配置。 要退出 Web 服务器,只需按 CTRL+C.

默认情况下,您只能从本地机器访问 Rails 测试页面。 如果要从网络上的其他机器访问 Rails 默认测试页面,请运行:

$ rails server -b 0.0.0.0

现在,您可以通过导航到网络上的任何系统访问 Rails 测试页面 https://ip-address:3000 从浏览器窗口。

您可能还需要允许端口 3000 在您的防火墙/路由器中。

您还可以通过使用不同的端口 -p 标志以及端口号,如下所示:

$ rails server -b 0.0.0.0 -p 8080

现在,您可以使用以下 URL 访问您的 Rails 应用程序: https://ip-address:8080

3. 使用 MySQL 和 Rails 应用程序

虽然 Sqlite 与 Rails 配合得很好,但有时它可能不足以满足您的 Rails 应用程序。 如果你想要可扩展性、并发性、集中化和控制,你可能想尝试更强大的数据库,比如 MySQL 或 PostgreSQL。 以下指南解释了如何在 Ruby on Rails 应用程序中使用 MySQL。

  • 如何在 Ruby On Rails 应用程序中使用 MySQL

4. 在 Rails 应用程序中使用 PostgreSQL

PostgreSQL 是另一个推荐用于 Rails 应用程序的数据库。 如果您想在 Rail 项目中使用 PostgreSQL 而不是 MySQL,以下指南将有所帮助。

  • 如何在 Ruby On Rails 应用程序中使用 PostgreSQL

5. 移除 RVM

安装 Ruby 后,您可能不需要 RVM。 因此,如果您不再需要 RVM,可以卸载它。

为此,请编辑您的 ~/.bashrc 文件:

$ nano ~/.bashrc

向下滚动到最后并删除以下几行:

[...] Add RVM to PATH for scripting. Make sure this is the last PATH variable chang>  PATH="$PATH:$HOME/.rvm/bin"

CTRL+W 其次是 CTRL+X 保存和 close 文件。

来源 ~/.bashrc 文件使更改立即生效。

$ source ~/.bashrc

最后,删除 RVM 目录:

$ rm -r ~/.rvm/

结论

在此阶段,您应该了解什么是 Ruby on Rails,如何使用 RVM 在 Linux 中安装 Ruby on Rails,以及最后如何创建示例 Rails 应用程序并通过 Web 浏览器对其进行测试。 开始开发您的 Rails 应用程序。

资源:

  • Ruby 版本管理器网站
  • Ruby on Rails 网站
  • Ruby on Rails GitHub 存储库
  • Ruby on Rails 文档

LinuxNodejs开源编程语言RubyRuby on RailsRuby Version ManagerRVMSqliteYarn