ブログ名

Ruby on RailsでWebアプリケーションを開発する①【ローカル開発環境の構築】

Ruby on Railsについて

Ruby on Railsは、オープンソースのWebアプリケーションフレームワーク(Webアプリケーションを開発しやすくするツール)です。名前の通り、Ruby言語をベースとしています。公式サイトはこちらです。
可読性の高いRuby言語を使用していることもあり、スピード感を持って開発できることからベンチャー企業で人気です。
実行するまでエラーが発生していることが分かりづらかったり、メモリの消費量が大きかったりとデメリットもありますが、負荷の少ないアプリケーションであればこのフレームワークを使用することでtoB向けの業務システムからtoC向けのWebサービス、はたまたブラウザゲーム開発も可能です。
今回は、このRuby on Railsのローカル開発環境の構築方法をご紹介します。

筆者の環境

  • Windows 10 Pro 64bit
  • Vagrant 2.2.6
  • Virtual Box バージョン 6.0.14 r133895 (Qt5.6.2)

ローカル開発環境の構築

VagrantVirtualBoxUbuntu OSの仮想環境を作成し、仮想環境にSSH接続して開発を行います(本シリーズの最終回でAWS Amazon Linux OSのEC2サーバにデプロイするため、開発環境もLinuxベースのOSにします)。

Virtual Boxの導入

Virtual Boxは仮想環境を作成するアプリケーションです。
仮想環境とは、簡単に説明すると自身のPC上にある別のPCです。
仮想環境は別のPCのため、操作するにはSSHやRDP等の遠隔で操作する手段が必要になります。
こちらからホストOSに合ったバージョンをダウンロード・インストールして下さい。 f:id:shizuuuka0202:20200219084148p:plain

Vagrantの導入

Vagrantは仮想環境の構築作業の一部を自動化するツールです。
このツールを使用すると、仮想環境の作成・削除がしやすくなります。
こちらからホストOSに合ったバージョンをダウンロード・インストールして下さい。 f:id:shizuuuka0202:20200219083135p:plain

TeraTermの導入

先のお話の通り、仮想環境を操作するためにはSSHやRDP等の遠隔で操作する手段が必要になります。
今回は仮想環境をUbuntu OSにするため、SSH接続して操作したいと思います。
こちらからホストOSに合ったバージョンをダウンロード・インストールして下さい。 f:id:shizuuuka0202:20200219083233p:plain

※インストール時のウィザードで、「コンポーネントの選択」画面が表示されましたら、「TeraTerm Menu」にチェックを入れることをおすすめします。これを使用すると、セレクトボックスから接続先を選択できるようになり、仮想環境への接続が楽になります。
「Virtual Box」、「Vagrant」、「TeraTerm」の導入が終わりましたら、一度PCを再起動しましょう。

仮想環境の起動準備

コマンドプロンプト(またはPowerShell)を起動して、下記コマンドを実行しバージョンを確認します。
vagrant -v
下記のようにバージョンが表示されていたら、vagrantのインストールに成功しています。
f:id:shizuuuka0202:20200219083323p:plain この後も、同じ画面でコマンドを実行していきます。

次に、下記コマンドを実行します。
vagrant plugin install vagrant-vbguest
このコマンドを使用すると、vagrantのバージョンが「Virtual Box Guest Additions(ホストOSと仮想環境との間に共有フォルダを作成することができるツール)」のバージョンに対応していない場合に、自動で最新版のvagrantをインストールしてくれるようになります。
それでは、仮想環境を作成していきます。

仮想環境の作成

下記コマンドを実行し、ディレクトリを作成します。
mkdir vagrant
作成したディレクトリ内に移動します。
cd vagrant
作成したディレクトリ内で下記コマンドを実行し、もう一度ディレクトリを作成します。
mkdir ubuntu
ubuntuディレクトリ内に入り、
cd ubuntu
下記コマンドで「Vagrantfile」を作成します。
vagrant init bento/ubuntu-18.04
「Vagrantfile」は、仮想環境を構築するための設計図のようなものです。
このファイルに書かれた情報を基に、仮想環境を構築することができます。

※「Vagrantfile」を開くと、「config.vm.network "private_network", ip: "192.168.33.10"」がコメントアウト(文の前に#がついている)されていることがあります。
その場合は、コメントを解除して下記の画像のような状態にしましょう。 f:id:shizuuuka0202:20200219083421p:plain ここまで来たら、仮想環境を起動します。下記コマンドを実行して下さい。
vagrant up
初回は実行に非常に時間がかかりますが、起動が完了するとプロンプトに戻ります。 f:id:shizuuuka0202:20200219083521p:plain 下記コマンドで起動しているかどうか、確認すると良いでしょう。
vagrant status f:id:shizuuuka0202:20200219083558p:plain

※ちなみに、仮想環境を終了する場合は下記コマンドを実行します。
vagrant halt

仮想環境にSSH接続

ここから先は、コマンドプロンプト(PowerShell)ではなく、最初に導入したTeraTermを使用します。
仮想環境は立ち上げたまま(vagrant upした状態)にして下さい。

まず、TeraTermを起動します。
表示されたダイアログで下記情報を入力し、OKを選択します。

ホスト名: 127.0.0.1
TCPポート: 2222

f:id:shizuuuka0202:20200219083652p:plain

OKを選択した次の画面で、下記情報を入力します。

ユーザ名: vagrant

入力が終わったら「RSA/DSA/ECDSA/ED25519鍵を使う」のラジオボタンにチェックを入れ、秘密鍵のボタンをクリックします。 f:id:shizuuuka0202:20200219083739p:plain 秘密鍵を選択します。
下記のディレクトリにあります。
※「すべてのファイル」にしないと、秘密鍵ファイルが表示されませんのでご注意ください。

.vagrant\machines\default\virtualbox\private_key

f:id:shizuuuka0202:20200219083843p:plain

秘密鍵の選択が終わりましたら、OKを選択します。 f:id:shizuuuka0202:20200219083922p:plain

無事に、仮想環境へ接続できました。f:id:shizuuuka0202:20200219084000p:plain

次回以降は、仮想環境に接続した状態で、Ruby on Railsのアプリケーションを作成していきます。
まずは簡単なアプリケーションの作成を通して、Ruby on Railsが構成する各ファイルの解説をしていきたいと思います。

以上、お疲れ様でした。


戻る