AWS Cloud9にRails環境を構築する方法
AWSとはAmazonが提供するクラウド開発環境。
AmazonのECショップは世界でもトップクラスの利用者がいる。
そのためサーバーの運用技術等のノウハウを蓄積しており、その仕組みを外部の事業者にも販売している。個人での利用も可能。
AWSの料金体系は基本的には従量課金制。
使用した時間に応じて料金が発生する。電話の通話料金のようなイメージだ。
AWSのCloud9の利用自体は無料。Cloud9を動かすサーバ(EC2)は有料である。(無料利用枠であれば無料)
AWSは新規顧客を対象として無料利用枠を提供しており、新規アカウント作成から12ヶ月。
月間750時間まで無料利用枠で利用する事が可能。
無料利用枠終了後は、仮に月間90時間使用した場合で、約200円程となる。
AWSのCloud9があれば、Webブラウザとインターネットがあれば、いつでもどこでも開発が行えるようになる。
また、使用しているPCのOSやバーションに依存する事なく、環境構築できる事も魅力。
その他にもAWSには様々な機能があるが、今回はアカウント取得後に、Cloud9を使用しての環境構築が完了するまでの手順を紹介する。
cloud9上に環境を構築
AWSのcloud9画面から「Create enviroment」を選択する。

次に環境に名前を付ける画面に遷移する。
任意の名前を設定し、「Next step」を押下。
「Description」には説明を書く事ができるが入力は必須ではない。

次に環境の詳細設定画面に遷移するが、デフォルト設定で問題無い。
「Next step」を押下し、最後の確認画面で「Create enviroment」を押下すれば環境が作成される。

無事環境が作成されれば次のような画面に遷移する。
ここまできたら環境の準備は完了。

ソフトウェア最新化
まず、環境にインストールされているソフトウェアを最新にする。
画面下部のSSHターミナルにて、「sudo yum update」を入力しenterを押下。

アップデートがある場合は、「Is this ok [y/N]」と聞かれるため、yesの意味である「y」を入力しenter。

Rubyバージョン管理
次にRubyのバージョン管理を行う。
Rubyのバージョンを切り替えるソフトウェアには、「RVM」と「rbenv」とがあるが、今回は「RVM」を使用する。
インストールされているrvmを「rvm -v」コマンドで確認する。
学習のタイミングによってインストールされているバージョンに差がある。

「RVM」によって、切り替える事ができるRubyのバージョンを「rvm list」コマンドで確認する。

今回は「Ruby2.5.1」を使用するため、「rvm install 2.5.1」コマンドを実行してインストールする。(インストールには少し時間がかかる)

インストール完了後、「install of ruby-2.5.1」が表示されていれば成功だ。

「rvm list」コマンドで確認すると、先ほどインストールしたRubyのバージョンを確認できる。

「rvm use 2.5.1」コマンドを実行し、「2.5.1」を使用するように変更しておく。

変更後、「ruby -v」で変更されているかを確認できる。

その後、「ruby -2.5.1」をデフォルトで使用するよう設定するため、「rvm –default use 2.5.1」を実行しておく。

Railsのインストール
現在使用されているRailsのバージョンを「rails -v」コマンドで確認する。
まだrailsがインストールされていないため、「command not found」が表示される。

railsのインストールにはgemを使用するため、gemがインストールされているか「gem -v」コマンドで確認する。
gemはRubyがインストールされていればインストールされている。

railsのインストールは「gem install rails -v 5.2.1 -N」コマンドで行う。
「gem install rails」コマンドで最新バージョンのrailsをインストールする事ができるが、今回はバージョンを指定したいため、「-v 5.2.1」を追記する。
「-N」コマンドはドキュメントをインストールしないという意味。インストール時間の短縮になるため指定する。

インストールが完了したら、「rails -v」でrailsのインストールを確認する。

新規Railsプロジェクトを作成し開発
ここまでの環境構築手順でRailsプロジェクトを作成し、開発を進める準備は完了。
これでブラウザからいつでもどこでも開発環境にログインし、開発を進める事ができる。
この記事へのコメントはありません。