介绍
Ruby on Rails 是寻求创建网站和 Web 应用程序的开发人员最受欢迎的应用程序堆栈之一. Ruby 编程语言与 Rails 开发框架相结合,使应用程序开发变得简单。
您可以使用命令行工具 rbenv轻松安装 Ruby 和 Rails。使用 rbenv 将为您提供一个健全的环境来开发您的 Ruby on Rails 应用程序,因为它可以让你轻松切换 Ruby 版本,使整个团队保持在相同的版本上。
rbenv 支持指定特定应用程序的 Ruby 版本,允许您更改每个用户的全球 Ruby,并允许您使用环境变量来替代 Ruby 版本。
本教程将带您通过Ruby和Rails的安装过程通过rbenv。
前提条件
要遵循这个教程,你需要:
- 一個 Ubuntu 16.04 伺服器與 [非根用戶] (https://andsky.com/tech/tutorials/initial-server-setup-with-ubuntu-16-04).
- Node.js 使用官方 PPA 安裝,如在 [如何在 Ubuntu 16.04 上安裝 Node.js] 所解釋的那樣(https://andsky.com/tech/tutorials/how-to-install-node-js-on-ubuntu-16-04)。 一些 Rails 功能,如資產管道,取決於 JavaScript 執行時間。
更新和安装依赖性
首先,我们应该更新apt-get
,因为这是我们第一次在这个会话中使用apt
。
1sudo apt-get update
接下来,让我们用apt-get
安装 rbenv 和 Ruby 所需的依赖:
1sudo apt-get install autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm3 libgdbm-dev
一旦我们安装了所有所需的系统依赖性,我们就可以开始安装rbenv本身。
安装 rbenv
现在我们已经准备好安装 rbenv. 让我们从 git 克隆 rbenv 存储库. 您应该从您计划运行 Ruby 的用户帐户完成这些步骤。
1git clone https://github.com/rbenv/rbenv.git ~/.rbenv
从这里开始,你应该将~/.rbenv/bin
添加到你的$PATH
,这样你就可以使用rbenv的命令行实用程序。 此外,将~/.rbenv/bin/rbenv init
添加到你的~/.basrc
文件,就可以自动加载rbenv。
1echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
2echo 'eval "$(rbenv init -)"' >> ~/.bashrc
接下来,通过键入源rbenv:
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 install
命令,这简化了Ruby的新版本的安装过程,您应该安装ruby-build(https://github.com/rbenv/ruby-build),我们将通过Git作为rbenv的插件安装它:
1git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
在此时,您应该安装 både rbenv 和 ruby-build,我们可以继续安装 Ruby。
安装 Ruby
有了 Ruby-build rbenv 插件,我们可以通过一个简单的命令安装任何可能需要的 Ruby 版本。
1rbenv install -l
该命令的输出应该是您可以选择安装的版本的长列表。
现在我们将安装特定版本的 Ruby. 重要的是要记住,安装 Ruby 可能是一个漫长的过程,所以要做好准备,安装需要一段时间才能完成。
作为一个例子,让我们安装 Ruby 版本 2.5.0,一旦安装完成,我们可以将其设置为我们的默认版本,使用全球
子命令:
1rbenv install 2.5.0
2rbenv global 2.5.0
如果您想安装并使用不同的版本,只需使用不同的版本号运行rbenv
命令,如rbenv install 2.3.0
和rbenv global 2.3.0
。
通过检查您的版本号来验证 Ruby 是否正确安装:
1ruby -v
如果您安装了 Ruby 版本 2.5.0,则您对上述命令的输出应该是这样的:
1[secondary_label Output]
2ruby 2.5.0p0 (2017-12-25 revision 61468) [x86_64-linux]
您现在已经安装了至少一个版本的 Ruby,并已设置了默认的 Ruby 版本,接下来,我们将设置宝石和铁路。
与宝石合作
宝石是扩展 Ruby 的功能的包,我们将通过gem
命令来安装 Rails。
为了使安装 Rails 的过程更短的时间,我们将关闭我们安装的每个宝石的本地文档,我们还将安装包装宝石来管理应用程序依赖性:
1echo "gem: --no-document" > ~/.gemrc
2gem install bundler
您可以使用gem env
命令(子命令env
是环境
的缩写)来了解更多关于宝石的环境和配置。
1gem env home
您的输出应该看起来像这样的东西,而 sammy 是用户名:
1/home/sammy/.rbenv/versions/2.5.0/lib/ruby/gems/2.5.0
一旦我们已经设置了宝石,我们可以继续安装Rails。
安装铁路
作为同一个用户,您可以使用gem install
命令安装最新版本的 Rails:
1gem install rails
如果您想安装特定版本的 Rails,您可以通过搜索列出有效版本的 Rails,这将产生一个长的可能版本列表。
1gem search '^rails$' --all
2gem install rails -v 4.2.7
rbenv 通过创建一个 shims 目录,指向当前启用的 Ruby 版本所使用的文件。通过rehash
子命令,rbenv 在该目录中保持 shims,以匹配每个 Ruby 命令在您的服务器上安装的每个 Ruby 版本。
1rbenv rehash
通过打印其版本来验证 Rails 是否已正确安装,使用此命令:
1rails -v
如果安装正确,您将看到已安装的 Rails 版本:
1[secondary_label Output]
2Rails 5.1.5
此时,您可以开始测试 Ruby on Rails 安装,并开始开发 Web 应用程序。
更新 rbenv
由于我们使用 git 手动安装了 rbenv,我们可以随时将我们的安装升级到最新的版本:
1cd ~/.rbenv
2git pull
这将确保我们使用最新的版本的rbenv可用。
删除 Ruby 版本
當您下載更多版本的 Ruby 時,您可能會在您的「~/.rbenv/versions」目錄中積累更多的版本。
使用 Ruby-build 插件以使用卸载
子命令来自动化删除过程,例如,输入此项将取消安装 Ruby 版本 2.1.3:
1rbenv uninstall 2.1.3
使用rbenv uninstall
命令,您可以清理您的Ruby版本,以便您没有比您目前使用的更多安装。
结论
我们已经涵盖了如何在这里安装 rbenv 和 Ruby on Rails 的基本知识,以便您可以使用多个 Ruby 环境。 对于您的下一步,您可以了解更多关于使这些环境更强大的问题。 为了在您的 Ruby on Rails 应用程序中获得更大的可扩展性,集中性和控制,您可能希望与 PostgreSQL或 MySQL一起使用它,而不是其默认的 sqlite 数据库。 随着您的需求增长,您也可以学习如何