プログラミング

開発環境を準備してRailsアプリケーションを作成するまで:備忘録

こんにちは、かないゆうきです。

 

Qiitaのアカを作るのも面倒臭いのでここに備忘録としてまとめておうこうかなと。

Railsで新規アプリケーションを作成する際に、環境構築でつまづいてしまうのももったいないので。

それと、個人的に手順を忘れがちので、Cloud9のターミナル上で開発環境を準備する方法とその説明を置いておきます。

また、最後には新規アプリケーションの作成方法も簡単にまとめているのでご覧ください。

 

開発環境を準備する

rvn

rvmとはRuby Version Managerとも言うRubyのバージョンを管理するためのツール。Cloud9が提供する環境には最初からインストールされている。なのでCloud9では最初からrvmコマンドが使用できる。ターミナルで以下のコマンドを実行する。

ターミナル
#rvmコマンドが実行できるよう、権限を変更
$ sudo chown ec2-user:wheel /usr
$ sudo chown ec2-user:wheel /usr/local
$ sudo chown -R ec2-user:rvm /usr/local/rvm

#Rubyの2.3.1をダウンロード
$ rvm install 2.3.1

#バージョン確認、2.3.1と表示されれば成功
$ ruby -v
ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-linux]

#デフォルトのバージョンを2.3.1に設定
$ rvm –default use 2.3.1

Rubyのインストールには5分程度の時間がかかる。
デフォルト設定をしておかないと新たにターミナルを開いた際にバージョンが戻ってしまい、railsコマンドが使用できなくなる。

mysql関連ファイルのインストール

このあとmysqlというデータベースをいれるため、事前に関連ファイルをダウンロードする。

ターミナル
$ sudo yum install mysql-devel

「y」を入力し、enterキーを押す。

mysqlを実行

ターミナル
$ sudo service mysqld start

Gemについて

ある特定の機能を提供するためにまとまったプログラムをライブラリと呼ぶが、Rubyの場合はこれをGemと呼ぶ。今回利用するRuby on Railsも、Gemの1つである。

Gem

Gem(ジェム)とは、Rubyを便利に扱うためのアプリケーションの総称。ターミナルからそれぞれのGemが持つコマンドを実行するという形で使用する。ここで、bundlerというGemをインストールする。

bundler

bundlerは、Gemを管理するためのGemである。環境ごとに使用するGemを決めたり、Gemのバージョンを指定したりできる。これを利用することで、多くのGemを効率的に管理することができる。

bundlerのインストールをする

bundler(バンドラー)をインストールするためのコマンド。

ターミナル
$ gem install bundler

 

Ruby on Railsのインストール

ターミナル
$ gem install rails –version=”4.2.6″

処理に時間がかかる場合がある。終わり次第、Railsが入ったか確認する。

ターミナル
$ rails -v

ここでターミナル上に Rails 4.2.6 と返ってくれば、Railsがインストールされていることになる。

ひとまず開発環境の準備は完了。

 

新規アプリケーションの作成

ついでに新規Railsアプリケーションの作成方法をまとめておきます。

  1. Rails new コマンドでアプリケーションの作成
  2. Gemfile の編集と bundle install
  3. database.yml の編集と rake db:create でデータベースの作成(必要に応じてphpMyAdmin)のインストール
  4. root ‘コントローラ名#アクション名’ としてルーティングの設定
  5. rails g controller コントローラ名 としてコントローラの作成
  6. app/views/コントローラ名 の下にビューファイルの作成

ローカル環境で構築された方は、「http://localhost:3000」にブラウザーでアクセスしてみて、作ったビューファイルが表示されるか確認する。

とまあ、ざっくり流れ的にこんな感じで開発環境が整うということですね。

 

この先は追加したい機能の実装や、見た目のカスタマイズへと進んでいきます。