0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

[heroku]一般的なデプロイまでの流れ

Posted at

はじめに

本記事では、Herokuの一般的なデプロイまでを記述します。
忘れてしまったり、理解できていない部分が多かったので、アウトプットします。

手順

Heroku CLIインストール

% brew tap heroku/brew && brew install heroku
% heroku --version
これでバージョン確認することもできる
% heroku login --interactive
ログインするため、メールアドレスとパスワードを入力
パスワードは表示されない

ログインできれば
Logged in as メールアドレス
と表示される

Heroku上にアプリケーションを作成

% heroku create アプリケーション名
Heroku上に作成するものをカレントディレクトリにしておく
設定ができたか確認できる
% git config --list | grep heroku

HerokuでMysqlを使用できるようにする

Herokuでは、
使用するデータベースの設定が、デフォルトPostgreSQLになっているので、
ClearDBアドオンを追加し、
MySQLを使用するための設定を行います。

% heroku addons:add cleardb

% heroku_cleardb=`heroku config:get CLEARDB_DATABASE_URL`

% heroku config:set DATABASE_URL=mysql2${heroku_cleardb:5}

Heroku上にmaster.keyを設定する

環境変数としてmaster.keyの値を設置します。

Herokuへプッシュする前に設定します

% heroku config:set RAILS_MASTER_KEY=`cat config/master.key`
「RAILS_MASTER_KEY」という変数に値を設定する
% heroku config
環境変数を設定できたか確認

動作環境を変更

私が普段使用しているRubyのバージョンでは、Herokuのstackは使用できませんので、
ここで変更する必要があります。

Heroku-20

Heroku-18

% heroku stack:set heroku-18 -a アプリケーション名

Herokuへアプリケーションを追加

% git push heroku master

Heroku上でマイグレーションファイルを実行

pushしただけでは、
データベースにはマイグレーションの情報が反映されないため、
heroku runをします。

% heroku run rails db:migrate

公開情報を確認

% heroku apps:info
以降に、
URLが表示されるので、アプリケーションを確認します。

エラー発生時のログの確認

% heroku logs --tail --app アプリケーション名
これでログを確認することができます。

以上です。

終わりに

Herokuのデプロイの方法は頭に入っていると思っていましたが、
デフォルトがPostgreSQLだったりと、理解が要所要所抜けているなと感じました。

デプロイしなければアプリケーションを作成できたことにならないですし、
ここは正確に理解します。

明日も頑張ります!

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?