チュートリアルをする。最初のアプリ
チュートリアルを参考に実行している。railstutorial.jp
フォルダを作ってはいる。
mkdir rails_projects cd rails_projects/
アプリ作成
rails new first_app
フォルダ構成を描いてみた。
Gemefileの確認
gemfileをチュートリアルにあわせる。
source 'https://rubygems.org' ruby '2.0.0' #ruby-gemset=railstutorial_rails_4_0 gem 'rails', '4.0.5' group :development do gem 'sqlite3', '1.3.8' end gem 'sass-rails', '4.0.5' gem 'uglifier', '2.1.1' gem 'coffee-rails', '4.0.1' gem 'jquery-rails', '3.0.4' gem 'turbolinks', '1.1.1' gem 'jbuilder', '1.0.2' group :doc do gem 'sdoc', '0.3.20', require: false end
変更した内容の説明はチュートリアル参照。
Bundlerでこれらのgemにもとづく更新を行う。
bundle update bundle install
git管理下に置く。
gitはすでに入っている。
$ git --version git version 2.4.1
checkoutをcoと略記させるエイリアス設定。
$ git config --global alias.co checkout
ルートでgitリポジトリを作成
git init
.gitignoreにgitに無視させるファイルを指定する。
# Ignore bundler config. /.bundle # Ignore the default SQLite database. /db/*.sqlite3 /db/*.sqlite3-journal # Ignore all logfiles and tempfiles. /log/*.log /tmp # Ignore other unneeded files. doc/ *.swp *~ .project .DS_Store .idea .secret
ルートでカレントディレクトリを追加(再帰される)。
git add .
ステージングエリア確認
git status
コミット
git commit -m "Initialize repository"
コミット確認
git log
githubにpushしてみる。
git remote add origin https://github.com/<username>/first_app.git git push -u origin master
デプロイ
本番環境としてHerokuを使用する。
PostgreSQL使用のためにGemfileを更新する。
source 'https://rubygems.org' ruby '2.0.0' #ruby-gemset=railstutorial_rails_4_0 gem 'rails', '4.0.5' group :development do gem 'sqlite3', '1.3.8' end gem 'sass-rails', '4.0.5' gem 'uglifier', '2.1.1' gem 'coffee-rails', '4.0.1' gem 'jquery-rails', '3.0.4' gem 'turbolinks', '1.1.1' gem 'jbuilder', '1.0.2' group :doc do gem 'sdoc', '0.3.20', require: false end group :production do gem 'pg', '0.15.1' gem 'rails_12factor', '0.0.2' end
:productionで追加した部分が本番環境のgem
Bundlerでインストール
bundle install --without production
gitにコミット
git commit -a -m "Update Gemfile.lock for Heroku"
Herokuはすでにアカウント登録しているのでlogin
heroku login
ルートでHerokuアプリ作成
heroku create
herokuにリポジトリをプッシュ
git push heroku master
ブラウザで確認する。
heroku open
ルートへのルーティング設定をしていないのでdon't existが表示される。
アプリの管理設定はherokuサイトからできる。