如何使用rbenv在Debian 8上安装Ruby on Rails

介绍

对于希望创建网站和网络应用程序的开发人员来说,最流行的应用程序栈之一是Ruby on Rails。通过使用Ruby编程语言与Rails开发框架结合,简化了应用程序开发。 该命令行工具 rbenv允许您安装和管理Ruby和Rails。 使用rbenv将为开发您的Ruby on Rails应用程序提供一个坚实的环境,因为它将允许您根据需要在Ruby版本之间移动,从而保持整个团队的同一版本。 项目库位于 GitHub上 。 rbenv支持指定特定于应用程序的Ruby版本,允许您为每个用户更改全局Ruby,并允许您使用环境变量覆盖Ruby版本。

先决条件

本教程将带您通过Ruby和Rails安装过程中通过rbenv在Debian 8.要学习本教程,你需要有一个Debian 8 服务器以 非root用户

更新和安装依赖关系

首先,我们应该更新 apt-get ,因为这是第一次,我们将使用 apt在这个环节。这将确保本地软件包缓存更新。
sudo apt-get update
接下来,让我们安装rbenv和Ruby提供所需的依赖 apt-get
sudo apt-get install autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm3 libgdbm-dev
因为我们将从Git克隆rbenv,我们还将安装Git:
sudo apt-get install git-core
一旦我们安装了所有必需的系统依赖项,我们就可以进入rbenv本身的安装。

安装rbenv

现在我们准备安装rbenv。让我们从Git克隆rbenv存储库。您应该从计划运行Ruby的用户帐户中完成这些步骤。
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
从这里,你应该添加 ~/.rbenv/bin到你的 $PATH ,这样就可以使用rbenv的命令行工具。 还加入 ~/.rbenv/bin/rbenv init到你的 ~/.bash_profile会让你自动加载rbenv。
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
接下来,通过键入以下命令来源rbenv:
 source ~/.bashrc
您可以检查是否rbenv成立正确使用 type命令,该命令将显示rbenv的详细信息:
type rbenv
您的终端窗口应输出以下内容:
Outputrbenv is a function
rbenv () 
{ 
    local command;
    command="$1";
    if [ "$#" -gt 0 ]; then
        shift;
    fi;
    case "$command" in 
        rehash | shell)
            eval "$(rbenv "sh-$command" "$@")"
        ;;
        *)
            command rbenv "$command" "$@"
        ;;
    esac
}
为了使用 rbenv install命令,它简化了对Ruby新版本的安装过程,你应该安装 ruby-build ,我们将安装通过Git的rbenv插件:
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
在这一点上,您应该同时安装rbenv和ruby-build,我们可以继续安装Ruby。

安装Ruby

现在安装了ruby-build rbenv插件,我们可以通过一个简单的命令安装我们可能需要的任何版本的Ruby。首先,让我们列出所有可用的Ruby版本:
rbenv install -l
该命令的输出应该是一个长列表的版本,您可以选择安装。 我们现在将安装一个特定版本的Ruby。重要的是要记住,安装Ruby可能是一个漫长的过程,所以准备安装需要一些时间来完成。 这里作为例子,让我们安装Ruby 2.3.3版本:
rbenv install 2.3.3
如果您想安装并使用不同的版本,运行 rbenv用不同的版本号命令,在 rbenv install 2.3.0rbenv global 2.3.0 。 安装过程可能需要一些时间。您会收到类似的输出,与 sammy作为用户的名称,一旦安装完成:
Output-> https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.3.tar.bz2
Installing ruby-2.3.3...
Installed ruby-2.3.3 to /home/sammy/.rbenv/versions/2.3.3
现在设置集,我们刚刚安装,它是我们与默认版本的版本 global子命令:
rbenv global 2.3.3
验证一切都准备好使用去 ruby命令来检查版本号:
ruby -v
如果你安装的版本2.3.3的Ruby,你的输出到上面的命令应该是这样:
Outputruby 2.3.3p222 (2016-11-21 revision 56859) [x86_64-linux]
您现在至少已安装一个版本的Ruby,并已设置您的默认Ruby版本。接下来,我们将设置gems和Rails。

使用Gem

Gems是扩展Ruby功能的包。我们希望通过安装Rails gem命令。 为了使安装Rails的过程不那么冗长,我们将关闭我们安装的每个gem的本地文档。我们还将安装bundler gem来管理应用程序依赖:
echo "gem: --no-document" > ~/.gemrc
gem install bundler
当安装过程完成后,您应该会收到类似的输出:
OutputFetching: bundler-1.13.6.gem (100%)
Successfully installed bundler-1.13.6
1 gem installed
你可以使用 gem env命令(子命令 env是短期的 environment ),以了解更多关于Gem的环境和配置。 您可以检查Gem的地方正在使用安装位置 home的说法,这将显示路径到Gem安装在服务器上。
gem env home
你的输出应该是这样:
/home/sammy/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0
一旦我们设置了gem,我们可以继续安装Rails。

安装Rails

作为同一个用户,你可以用安装最新的Rails版本 gem install命令:
gem install rails
您将在整个安装过程中收到输出,并确认Rails已成功安装。 如果你想安装一个特定版本的Rails,你可以通过搜索来列出Rails的有效版本,这将输出一个很长的可能版本列表。然后,我们可以安装一个特定版本,如 4.2.7:
gem search '^rails$' --all
gem install rails -v 4.2.7
rbenv作品通过创建 垫片的目录,这点由当前已启用了Ruby版本所使用的文件。 通过 rehash子命令,rbenv保持在该目录在服务器上的Ruby各地的每一个安装的版本每个Ruby命令匹配垫片。每当你安装一个新版本的Ruby或一个gem提供命令,你应该运行:
rbenv rehash
因为没有输出,当这成功,我们可以通过打印其版本,使用此命令验证Rails已正确安装:
rails -v
如果安装正确,您将看到安装的Rails版本。我们现在可以继续设置我们的Ruby on Rails环境。

安装JavaScript运行时

几个Rails功能(例如资产管道)取决于JavaScript运行时。我们将安装Node.js以提供此功能。 我们可以先移动到一个可写目录如 /tmp 。 从那里,我们将其输出到文件验证Node.js的脚本,然后读取它 less
cd /tmp
\curl -sSL https://deb.nodesource.com/setup_6.x -o nodejs.sh
less nodejs.sh
一旦我们满意的Node.js的脚本,我们可以退出出 less键入 q 。 我们现在可以安装NodeSource Node.js v6.x repo:
cat /tmp/nodejs.sh | sudo -E bash -
-E这里使用的标志将保留用户的现有环境变量。 安装完成后,我们可以使用 apt-get安装Node.js的:
sudo apt-get install -y nodejs
此时,您可以开始测试Ruby on Rails安装并开始开发Web应用程序。

更新rbenv

由于我们使用Git手动安装rbenv,我们可以随时将我们的安装升级到最新版本:
cd ~/.rbenv
git pull
这将确保我们使用的rbenv最新版本可用。

卸载Ruby版本

当你下载更多版本的Ruby,可以积累更多的版本比你想在你的 ~/.rbenv/versions目录。 使用红Gem构建插件删除过程与自动 uninstall子命令。 例如,如果我们已经安装了Ruby 2.1.3,打字这将卸载它:
rbenv uninstall 2.1.3
随着 rbenv uninstall命令可以清理你的Ruby版本,让你不必比您目前使用较多的安装做。

学习更多

我们已经介绍了如何在这里安装rbenv和Ruby on Rails的基础知识,以便您可以使用多个Ruby环境。随着需求的增长,您还可以了解 如何在多个服务器上扩展Ruby on Rails应用程序
赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏