shou2017.com
JP / EN

railsアプリをherokuにデプロイするための全手順

Mon Aug 7, 2017
Sat Aug 10, 2024

herokuのユーザー登録などは終わっている前提。

まずはHeroku CLIがインストールされているか確認しましょう。

$ heroku --version
bash: heroku: command not found

インストールされてないので、インストールします。

Heroku CLIにやり方は載ってます。コマンドが変わることもあるので、必ず公式を確認しましょう。

macの場合は

$ brew install heroku/brew/heroku

Ubuntu / Debianの場合は

$ wget -qO- https://cli-assets.heroku.com/install-ubuntu.sh | sh

windowsの場合は、Heroku CLIからインストールします(大変ですね)。

インストールできたか確認します。

$ heroku --version
heroku-cli/6.15.5 (linux-x64) node-v9.2.1

ログイン

$ heroku login

ちなみに、Cloud9でやる場合は、herokuを操作するためのソフトウェアをインストールします。

$ wget -qO- https://cli-assets.heroku.com/install-ubuntu.sh | sh

heroku loginをするとメールアドレスとパスワードを聞かれるので、予め登録したものを答えれば大丈です。

ログインに成功するとメールアドレスが表示されます。

$ heroku login
Enter your Heroku credentials.
Email:[email protected]
Password:Password
Logged in as [email protected]

ログインに成功したら。heroku createで、アプリケーション枠を作ります。

$ heroku create
Creating app... done, ⬢ immense-chamber-761
https://sample.herokuapp.com/ <=コレがurl

アセットプリコンパイル

config/environments/production.rbを開く

省略

config.assets.compile = true <=falseをtrueにする

次に

$ rake assets:precompile RAILS_ENV=production

アセットプリコンパイルは、assetsを作業したら必ずherokuに送る前にやる。

コンソールにエラーを表示する

herokuでエラーになってもコンソールには表示されないのでgemをインストールする。

gem 'rails_12factor', group: :production

herokuに送る

$ git add -A
$ git commit -m "test"
$ git push heroku master

herokuは自動時にデータベースを作成してくれるので、rake db:createは不要。

$ heroku run rake db:migrate RAILS_ENV=production

環境変数を設定

$ heroku config:add SECRET_TOKEN="$(bundle exec rake secret)"

ここまで、終われば、あとは、先ほどのurlにアクセスすればok。

herokuでよく使うもの

ログの確認

$ heroku logs -t

空のファイルを送信。以前と同じ内容を送るにはちょっと変更が必要。

$ git commit -m "for deploy heroku" --allow-empty

master以外のブランチから送る。

$ git push heroku develop:master

終わり。

Tags
Heroku
See Also