タイトルの通り、構築までをざっくりと。
ドットインストールとかで見たのはPostgresだったので、MySQLで試してみました。
http://dotinstall.com/lessons/basic_heroku
#herokuの準備
まず当然アカウントを作成している必要がある。
https://dashboard.heroku.com/
そしてheroku toolbeltをインストールします。
https://toolbelt.heroku.com/
これがないとherokuコマンドが使えない。
インストールしたらログインできるのか試す。
$ heroku login
アカウントを求められるのでログインする。
ログインできればherokuの準備は完了。
#MySQLをインストールする
インストールしてください。
参考:http://qiita.com/hkusu/items/cda3e8461e7a46ecf25d
#Railsのアプリを作成する
MySQLで使える様に作成する。
参考:http://qiita.com/itkrt2y/items/4ea5bfe90ca65e4a9ebd
$ rails new testapp -d mysql
$ cd testapp //ディレクトリを移動
よくわからないけどみんなやってるのtherubyracerのコメントアウトを外す。
あと、herokuでrailsを動かすために「rails_12factor」が必要なので追加する
#gem 'therubyracer', platforms: :ruby
gem 'therubyracer', platforms: :ruby
#追加
gem 'rails_12factor', group: :production
Gemfileを更新したらbundle install
bundle install
#Procfileを作成する
heroku上で実行されるコマンドを書いておくファイルらしいです。
Railsのディレクトリ内でやってください。
$ vi Procfile
web: bundle exec rails server -p $PORT
#gitとして初期化
Railsのディレクトリ内でやってください。
$ git init
$ git add .
$ git commit -m "initial commit."
#Herokuにアプリを登録
コマンドラインでできます。
これでherokuのサーバ上にgitリポジトリが作られます。
同時に、公開URLとgitリポジトリのURLが生成されます。
$ heroku create
Creating app... done, stack is cedar-14
[herokuの公開URL] | [herokuのgitリポジトリ]
#herokuにMySQLアドオンを追加
$ heroku addons:add cleardb:ignite
MySQLの設定(パスワードとか)を調べる
$ heroku config | grep CLEARDB_DATABASE_URL
CLEARDB_DATABASE_URL: mysql://[ユーザ名]:[パスワード]@[ホスト名]/[スキーマ名]?reconnect=true
##herokuの環境変数を設定
heroku config:set DATABASE_URL='mysql2://[ユーザ名]:[パスワード]@[ホスト名]/[スキーマ名]?reconnect=true'
heroku config:set DATABASE_PASSWORD ='[パスワード]'
##Scaffoldでもしましょう
$ rails g scaffold Text title:string body:text
$ rake db:create
$ rake db:migrate
##RailsのDB接続設定を変えます。
production:
<<: *default
database: testapp_production
username: testapp
password: <%= ENV['TESTAPP_DATABASE_PASSWORD'] %>
さっき追加した環境変数の値を設定しましょう
production:
<<: *default
database: [スキーマ名]
username: [ユーザ名]
password: <%= ENV['DATABASE_PASSWORD'] %>
そしたらまたコミット
$ git add .
$ git commit -m "initial commit."
#herokuにデプロイ
$ git push heroku master
$ heroku open
##herokuにスキーマを作成する
$ heroku run rake db:create
$ heroku run rake db:migrate
#ログを見たい時はこう
$ heroku logs --tail
あとはProcfileにどんなことを書けるのか調べてみたいです。
まだよくわかってないので…。