介绍
Ruby on Rails是寻求创建网站和Web应用程序的开发者最受欢迎的应用程序堆栈之一。
您可以使用命令行工具 rbenv安装 Ruby 和 Rails。使用 rbenv 为您提供了一个可靠的环境来开发您的 Ruby on Rails 应用程序,并允许您在 Ruby 版本之间切换,使整个团队保持在同一版本上。
在本教程中,我们将指导您通过rbenv
和gem
的Ruby和Rails安装流程。 首先,您将安装适当的包来安装rbenv,然后Ruby。 之后,您将安装ruby-build
插件,以便您可以安装可用的Ruby版本。 最后,您将使用gem
来安装Rails,然后可以使用Ruby on Rails来开始您的Web开发。 我们还将提供如何检查您的rbenv版本是否更新,以及如何卸载Ruby版本和rbenv的步骤。
前提条件
要遵循这个教程,你需要:
- 一个 Ubuntu 20.04 服务器是按照 Ubuntu 20.04 初始服务器安装指南设置的,包括一个 sudo 非根用户和一个防火墙
- Node.js 安装使用官方 PPA,如在 How To Install Node.js on Ubuntu 20.04的 option 2中解释的那样。
步骤 1 – 安装 rbenv 和依赖
Ruby 依赖多个包,您可以通过您的包管理器安装它们,一旦安装,您可以安装 rbenv 并使用它来安装 Ruby。
首先,更新您的包列表:
1sudo apt update
接下来,安装安装Ruby所需的依赖:
1sudo apt install git curl libssl-dev libreadline-dev zlib1g-dev autoconf bison build-essential libyaml-dev libreadline-dev libncurses5-dev libffi-dev libgdbm-dev
安装依赖之后,您可以安装rbenv本身。使用curl
从Github上获取安装脚本,并直接向bash
管道运行安装程序:
1curl -fsSL https://github.com/rbenv/rbenv-installer/raw/HEAD/bin/rbenv-installer | bash
接下来,将~/.rbenv/bin
添加到您的$PATH
,以便您可以使用rbenv
命令行实用程序。
1echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
然后,将eval
命令$(rbenv init -)
添加到您的~/.bashrc
文件中,以便 rbenv 自动加载:
1echo 'eval "$(rbenv init -)"' >> ~/.bashrc
接下来,将您对您的 ~/.bashrc
文件所做的更改应用到当前的壳会话中:
1source ~/.bashrc
通过运行类型
命令来验证 rbenv 是否正确设置,该命令会显示有关rbenv
命令的更多信息:
1type rbenv
您的终端窗口将显示如下:
1[secondary_label Output]
2rbenv is a function
3rbenv ()
4{
5 local command;
6 command="${1:-}";
7 if [ "$#" -gt 0 ]; then
8 shift;
9 fi;
10 case "$command" in
11 rehash | shell)
12 eval "$(rbenv "sh-$command" "$@")"
13 ;;
14 *)
15 command rbenv "$command" "$@"
16 ;;
17 esac
18}
此时,您既安装了 rbenv 又安装了 ruby-build。
步骤 2 – 使用 Ruby-build 安装 Ruby
有了现在安装的ruby-build
插件,您可以使用单个命令安装您可能需要的任何版本的 Ruby。
1rbenv install -l
该命令的输出将是您可以选择安装的版本列表:
1[secondary_label Output]
22.6.8
32.7.4
43.0.2
5jruby-9.2.19.0
6mruby-3.0.0
7rbx-5.0
8truffleruby-21.2.0.1
9truffleruby+graalvm-21.2.0
10
11Only latest stable releases for each Ruby implementation are shown.
12Use 'rbenv install --list-all / -L' to show all local versions.
现在让我们来安装 Ruby 2.7.6:
1rbenv install 2.7.6
安装 Ruby 可能是一个漫长的过程,所以要准备好安装需要一段时间才能完成。
一旦安装完成,用全球
子命令将其设置为默认版本的Ruby:
1rbenv global 2.7.6
通过检查其版本号来验证 Ruby 是否正确安装:
1ruby -v
如果您安装了 Ruby 2.7.6 版本,此命令将返回输出如下:
1[secondary_label Output]
2ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [x86_64-linux]
您现在已经安装了至少一个版本的 Ruby,并已设置了默认的 Ruby 版本,接下来,您将设置宝石和铁路。
步骤3 – 与宝石合作
宝石是 Ruby 库的分布方式,您使用宝石
命令来管理这些宝石,并使用此命令来安装 Rails。
当您安装宝石时,安装过程会生成本地文档,这可以为每个宝石的安装过程添加大量时间,因此通过创建一个名为 `~/.gemrc 的文件来关闭本地文档生成,该文件包含一个配置设置来关闭此功能:
1echo "gem: --no-document" > ~/.gemrc
Bundler是一个工具,用于管理项目的宝石依赖性。
1gem install bundler
您将收到以下输出:
1[secondary_label Output]
2Fetching bundler-2.2.27.gem
3Successfully installed bundler-2.2.27
41 gem installed
您可以使用gem env
命令(子命令env
是环境
的缩写)来了解更多关于宝石的环境和配置的信息。
1gem env home
您将收到类似于此的输出:
1[secondary_label Output]
2/home/sammy/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0
一旦您已经设置了宝石,您可以安装 Rails。
步骤4:安装铁路
要安装 Rails,请使用gem install
命令以及-v
标志来指定版本。
1gem install rails -v 6.1.4.1
gem
命令会安装您指定的宝石,以及其任何依赖性。Rails是一个复杂的Web开发框架,有许多依赖性,所以完成这个过程需要一段时间。
1[secondary_label Output]
2...
3Successfully installed rails-6.1.4.1
437 gems installed
<$>[注] 注:如果您想安装 Rails 的另一个版本,您可以通过进行搜索列出 Rails 的有效版本,这将产生可能的版本列表。
1gem search '^rails$' --all
2gem install rails -v 4.2.7
如果您想安裝最新版本的 Rails,請執行命令而未指定版本:
1gem install rails
美元
rbenv 通过创建一个 shims 目录,指向当前启用的 Ruby 版本使用的文件。通过rehash
子命令,rbenv 在该目录中保持 shims,以匹配每个 Ruby 命令在您的服务器上安装的每个 Ruby 版本。
1rbenv rehash
通过打印其版本来验证 Rails 是否正确安装,使用以下命令:
1rails -v
如果正确安装,此命令将返回已安装的 Rails 版本:
1[secondary_label Output]
2Rails 6.1.4.1
此时,您可以开始测试 Ruby on Rails 安装,并开始开发 Web 应用程序。
步骤 5 – 更新 rbenv
由于您使用 Git 手动安装了 rbenv,您可以随时通过在 ~/.rbenv 目录中的
git pull` 命令升级到最新版本:
1cd ~/.rbenv
2git pull
这将确保您使用最新的版本的 rbenv 可用。
步骤 6 – 卸载 Ruby 版本
当你下载 Ruby 的其他版本时,你可能会在你的 ~/.rbenv/versions 目录中积累比你想要的更多的版本. 使用 ruby-build 插件的
uninstall` 子命令来删除这些以前的版本。
以下命令会卸载 Ruby 版本 2.7.6:
1rbenv uninstall 2.7.6
使用rbenv uninstall
命令,您可以清理 Ruby 的旧版本,以便您没有比当前使用的安装更多。
步骤 7 – 卸载 rbenv
如果您已经决定不再使用 rbenv,您可以从系统中删除它。
要做到这一点,首先在编辑器中打开你的 ~/.bashrc
文件. 在这个例子中,我们将使用 nano
:
1nano ~/.bashrc
查找并从文件中删除以下两行:
1[label ~/.bashrc]
2...
3export PATH="$HOME/.rbenv/bin:$PATH"
4eval "$(rbenv init -)"
删除这些行后,保存文件并退出编辑器. 如果您使用了nano
,您可以通过按CTRL + X
然后Y
和ENTER
来退出。
然后用以下命令删除 rbenv 和所有安装的 Ruby 版本:
1rm -rf `rbenv root`
登录并重新登录以将更改应用到您的壳中。
结论
在本教程中,你安装了rbenv
和gem
来安装整个Ruby on Rails框架. 从这里,你可以开始创建你的Web开发应用程序项目. 如果你想了解更多关于使这些环境更强大,你可以查看我们的系列在 How To Code In Ruby。