Debian8でrbenvを使用してRubyonRailsをインストールする方法

提供:Dev Guides
移動先:案内検索

序章

サイトやWebアプリの作成を検討している開発者に最も人気のあるアプリケーションスタックの1つは、RubyonRailsです。 Rails開発フレームワークと組み合わせたRubyプログラミング言語を利用することで、アプリ開発が簡素化されます。

コマンドラインツールrbenvを使用すると、RubyとRailsをインストールして管理できます。 rbenvを使用すると、必要に応じてRubyバージョン間を移動し、チーム全体を同じバージョンに保つことができるため、RubyonRailsアプリケーションを開発するための堅固な環境が提供されます。 プロジェクトリポジトリはGitHubにあります。

rbenvは、Rubyのアプリケーション固有のバージョンを指定するためのサポートを提供し、ユーザーごとにグローバルRubyを変更できるようにし、環境変数を使用してRubyバージョンをオーバーライドできるようにします。

    1. 前提条件

このチュートリアルでは、Debian8のrbenvを介したRubyとRailsのインストールプロセスについて説明します。 To follow this tutorial, you need to have one Debian 8 server with a [non-root user] (initial-server-setup-with-debian-8).

    1. 依存関係を更新してインストールする

まず、このセッションでaptを使用するのはこれが初めてなので、apt-getを更新する必要があります。 これにより、ローカルパッケージキャッシュが確実に更新されます。

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自体のインストールに進むことができます。

    1. 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

typeコマンドを使用して、rbenvが正しく設定されているかどうかを確認できます。このコマンドにより、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
}

新しいバージョンのRubyのインストールプロセスを簡素化するrbenv installコマンドを使用するには、[ruby-build]( https://github.com/rbenv/ruby-build [ X179X])、Gitを介してrbenvのプラグインとしてインストールします。

git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build

この時点で、rbenvとruby-buildの両方がインストールされているはずです。これで、Rubyのインストールに進むことができます。

    1. Rubyをインストールする

ruby-build rbenvプラグインがインストールされたので、簡単なコマンドで必要なバージョンのRubyをインストールできます。 まず、Rubyの利用可能なすべてのバージョンをリストしましょう。

rbenv install -l

そのコマンドの出力は、インストールすることを選択できるバージョンの長いリストである必要があります。

次に、特定のバージョンのRubyをインストールします。 Rubyのインストールには時間がかかる可能性があることを覚えておくことが重要です。そのため、インストールが完了するまでに時間がかかるように準備してください。

ここでの例として、Rubyバージョン2.3.3をインストールしましょう。

rbenv install 2.3.3

別のバージョンをインストールして使用する場合は、rbenv install 2.3.0rbenv global 2.3.0のように、別のバージョン番号でrbenvコマンドを実行してください。

インストールプロセスには時間がかかる場合があります。 インストールが完了すると、 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

Rubyのバージョン2.3.3をインストールした場合、上記のコマンドの出力は次のようになります。

Outputruby 2.3.3p222 (2016-11-21 revision 56859) [x86_64-linux]

これで、少なくとも1つのバージョンのRubyがインストールされ、デフォルトのRubyバージョンが設定されました。 次に、gemとRailsをセットアップします。

    1. 宝石の操作

Gemsは、Rubyの機能を拡張するパッケージです。 gemコマンドを使用してRailsをインストールします。

Railsをインストールするプロセスが短くなるように、インストールする各gemのローカルドキュメントをオフにします。 また、アプリケーションの依存関係を管理するために、bundlegemをインストールします。

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コマンド(サブコマンドenvenvironmentの略)を使用して、gemの環境と構成について詳しく知ることができます。 home引数を使用すると、gemがインストールされている場所を確認できます。これにより、サーバーにgemがインストールされている場所へのパスが表示されます。

gem env home

出力は次のようになります。

/home/sammy/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0

gemをセットアップしたら、Railsのインストールに進むことができます。

    1. Railsをインストールする

同じユーザーとして、gem installコマンドを使用して最新バージョンのRailsをインストールできます。

gem install rails

Railsが最後まで正常にインストールされたことを確認する出力が、このインストールプロセス全体で受信されます。

Railsの特定のバージョンをインストールする場合は、検索を実行してRailsの有効なバージョンを一覧表示できます。これにより、可能なバージョンの長いリストが出力されます。 次に、4.2.7などの特定のバージョンをインストールできます。

gem search '^rails$' --all
gem install rails -v 4.2.7

rbenvは、 shims のディレクトリを作成することによって機能します。このディレクトリは、現在有効になっているRubyバージョンで使用されるファイルを指します。 rehashサブコマンドを介して、rbenvはそのディレクトリにシムを維持し、サーバーにインストールされているすべてのバージョンのRubyのすべてのRubyコマンドと一致させます。 新しいバージョンのRubyまたはコマンドを提供するgemをインストールするときはいつでも、以下を実行する必要があります。

rbenv rehash

これが成功すると出力がないため、次のコマンドを使用してバージョンを印刷することで、Railsが正しくインストールされていることを確認できます。

rails -v

正しくインストールされていれば、インストールされたRailsのバージョンが表示されます。 これで、RubyonRails環境のセットアップを続行できます。

    1. JavaScriptランタイムをインストールする

Asset Pipelineなどのいくつかの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スクリプトに満足したら、qと入力して、lessを終了できます。

これで、NodeSourceNode.jsv6.xリポジトリをインストールできます。

cat /tmp/nodejs.sh | sudo -E bash -

ここで使用される-Eフラグは、ユーザーの既存の環境変数を保持します。

インストールが完了したら、apt-getを使用してNode.Jsをインストールできます。

sudo apt-get install -y nodejs

この時点で、Ruby on Railsインストールのテストを開始し、Webアプリケーションの開発を開始できます。

    1. rbenvの更新

Gitを使用してrbenvを手動でインストールしたので、いつでもインストールを最新バージョンにアップグレードできます。

cd ~/.rbenv
git pull

これにより、利用可能な最新バージョンのrbenvを使用できるようになります。

    1. Rubyバージョンのアンインストール

Rubyのバージョンをさらにダウンロードすると、~/.rbenv/versionsディレクトリに必要以上のバージョンが蓄積される可能性があります。

ruby-buildプラグインを使用して、uninstallサブコマンドで削除プロセスを自動化します。 たとえば、Ruby 2.1.3 をインストールした場合、これを入力するとアンインストールされます。

rbenv uninstall 2.1.3

rbenv uninstallコマンドを使用すると、Rubyのバージョンをクリーンアップして、現在使用している以上のインストールが行われないようにすることができます。

    1. 詳細

ここでは、複数のRuby環境を使用できるように、rbenvとRubyonRailsをインストールする方法の基本について説明しました。 As your needs grow, you can also learn how to [scale Ruby on Rails applications across multiple servers] (how-to-scale-ruby-on-rails-applications-across-multiple-droplets-part-1).