Ruby on Rails

【Ruby on Rails】チュートリアル 「第1章 ゼロからデプロイまで」をやってみた

Ruby on Rails チュートリアルの第1章のメモです。第1章では、Ruby on Railsをゼロからデプロイするまでの一通りの流れをシンプルに体験することができます!

第1章 ゼロからデプロイまで | Rails チュートリアル

Railsチュートリアル第1章をやってみた

Ruby on Railsチュートリアルで学べること

  • 初心者向け
    • Rubyの基礎
    • HTMLとCSS
    • データベース
    • バージョン管理
    • 開発技法
  • ベテラン向け
    • MVCやREST
    • ジェネレータ
    • マイグレーション
    • ルーティング
    • ERB

Ruby on Railsとは?

プログラミング言語Rubyで記述された、Web開発フレームワーク
シリコンバレーの多くの企業で採用されている
Airbnb, Basecamp, Disney, Github, Hulu, Kickstarter, Sportify, Twitter, Yellow Pages

なぜRailsが大人気なフレームワークなのか?

100%オープンソースでMITライセンス
Ruby言語の柔軟性
RESTの設計思想に対応
巨大なコミュニティパワー

開発環境を作る

Railsチュートリアルの第3版では、Cloud9というIDEが開発環境としてリコメンドされている
最終的にはCloud9は使わないのでローカル環境に構築していく

Install Rails | Your Guide for Installing Ruby on Rails
を参考にRVM等をインストール

How to Install Rails

  1. XcodeとHomeBrewのインストール
  2. Gitのインストール
  3. RVM と Ruby のインストール

最後に

gem install rails -v 4.2.2

を叩く

アプリケーションを作成

Rails用のworkspaceをホームディレクトリに作成する

mkdir workspace

rails newコマンドでアプリケーションを作成

rails _4.2.2_ new hello_app

newコマンド実行後、自動的にbundle installコマンドが実行される

bundlerを実行

アプリケーションに必要なgemをインストール及びインクルードしていく
これを管理しているのがGemfile
PHPにおけるcompose.jsonのようなもの
チュートリアル通りにGemfileを書きなおして、bundle installを叩く

Q. gem 'sdoc'の欄にあるgroup::docとは何?
Q. ループ文みたいなのがあるがよくわからない!

Rails Sever

rails serverコマンドを叩くと、ローカルでRailsサーバーを立ち上げることができる
http://localhost:3000/を開くとRailsアプリケーションが表示される

MVCフレームワーク

別記事で!

Hello World!

コントローラにレンダリングするためのアクションを定義
デフォルトのルーティングはconfig/routes.rbで管理

ソースコードのバージョン管理

バージョン管理することで、
プロジェクトの変更履歴を追ったり、
間違えて削除してしまったファイルを簡単に復旧できるようになる

Bitbucketにてソースを管理

SSHの接続のところで上手く行かず
以下の記事を参考に解決
bitbucketにgitでpushするとPermission denied (publickey).と表示されるときの解決法 - くろねこ日記

コミットメッセージは現在形かつ命令形で書く
日本語であれば「〜の追加」などの体言止め

デプロイ作業

ローカルの環境から本番環境へ移す作業をデプロイ(deploy)という
コマンドのみでデプロイできるようにするのが近年の主流
Rails TutorialではHerokuというサービスを使って、簡単に本番環境へデプロイしていく

Herokuを使うため、production用にGemfileを書き換える

HerokuではデータベースにPostgreSQL(ぽすぐれ)を使用する
Gemfileを書き換えて以下のコマンドを叩く

bundle install --without production

--without productionを追加することで、本番用のgemをローカル環境にインストールされなくなる

Herokuにデプロイ

コマンドを叩くだけで簡単にデプロイできる

「第1章 ゼロからデプロイまで」のまとめ

チュートリアルにあるのをメモ

  • Ruby on Railsとは、Web開発のためのフレームワークであり、Rubyによって記述されている
  • Railsにはrailsというコマンドがあり、rails newで新しいアプリケーションを生成したり、rails serverでローカルサーバーを実行したりできる
  • コントローラのアクションを追加したり、ルートルーティングを変更したりするだけで「hello, world!」アプリケーションを作成できる
  • Gitによるバージョン管理を導入し、Bitbucketの非公開リポジトリにプッシュする理由は、データの損失を防止し、他の開発者と共同に作業を行えるようにするため
  • 作成したアプリケーションはHerokuの本番環境にdeployした

ここまでかかった時間は1時間ほど
BitbucketでのSSH導入やらローカル開発環境を整えるのに時間がかかった
Vimを使いたい等の理由がない限り、Cloud9を利用するほうがいいかもしれない
Ruby on Rails チュートリアル 第1章までかかった合計時間は1時間

次回の記事はこちら!
Ruby on Rails チュートリアル「第2章 Toyアプリケーション」をやってみた

Ruby on Railsのおすすめ書籍はこちら!


-Ruby on Rails