Herokuの勉強
入門
- HerokuはPasS
- インフラ部分はAWSは使ってるよ
- 元はruby用
- 開発者の生産性の向上がモットー
- easy deploy
始める
railsを入れる
sudo gem install rails
railsでサンプルアプリを立てる
rails new heroku_app
Userテーブルを作っているのかな。多分。
rails generate scaffold User name:string
DBと連携させるとか。
>||
rails db:migrate
|
一旦rails起動
rails server
http://localhost:3000/user で確かにアクセスができた。すげーrails。
ここからdeployの準備に入る
本番では Postgre使うってことらしいので、Gemfileに以下を追記。
gem 'pg', :group => :production gem 'sqlite3', :group => :development
sqlite3はデフォルトで書いてあるのでそれをEditした形。
そんでもって、GemFileを変更したら bundle install をする必要があるらしい。
bundle install --without production
そんで、Herokuのアカウントが必要らしい。
[Herokuのサイトにいってアカウントを作る。](http://www.heroku.com/)
できたので、次にheroku用のモジュールを入れる。
sudo gem install heroku
そんで、アプリケーションを作るっぽいコマンド。Heroku上に何か登録すんのかな?
heroku apps:create
ここでなんと!こんな出力が!
! The 'heroku' gem has been deprecated and replaced with the Heroku Toolbelt, download and install from https://toolbelt.heroku.com.
deprecated...まじか。この本10月号なのに。。一応ここのURL見てみよう。
ふむふむtoolbeltってのがあんのか。とりあえず入れる。
herokuコマンドが使えるようになるらしいね。
てことで、このタイミングで
sudo gem uninstall heroku
ってやったんだけど、どうやらtoolbeltも死んでしまったらしい。
なので2回入れました。
・・・はい、はいったー。
で、どうやら
git@heroku.com:murmuring-temple-7614.git
というのがアプリケーションのURLになるぽいです。
Herokuにデプロイする=ここにgit pushする
という意味。ふーーん。
では実際にやってみよう。
git add .; git commit; git push heroku master
色々pushしてから色々インストールしてる。すげーーって思ってたら落ちた。
-----> Launching... ! Heroku push rejected, failure releasing code To git@heroku.com:murmuring-temple-7614.git ! [remote rejected] master -> master (pre-receive hook declined) error: failed to push some refs to 'git@heroku.com:murmuring-temple-7614.git'
何それ。
まぁそれは置いておいて、もう1回やったらなぜかうまくいった。
-----> Launching... done, v6 http://murmuring-temple-7614.herokuapp.com deployed to Heroku
で、Heroku上のDBのまいぐれーとをして、
heroku run rake db:migrate
そしたら http://murmuring-temple-7614.herokuapp.com/users でアクセスできるようになっている!!!
んーなるほどぉ。
確かにこれは楽ちんねー。
gitにあがったプログラムを適用&DB操作&モジュールインストール等をさくっとやってくれちゃうってことねー。