初めに
- 今回は
herokuのデプロイについて自分が学んだことを備忘録として記載いたします。
素人が書いたものなので、仮に相違点があった場合、ご容赦いただけると幸いです。
それでは初めていきましょう!!
herokuをデプロイするのに必要な準備
1. 以下のサイトで会員登録をする
https://signup.heroku.com/jp
2. クレジットカードの登録
- クレジットカードを登録しなくてもある程度herokuを使うことができるが、クレジットカードを登録するとアプリの起動可能時間が550時間から1000時間になるので登録することをおすすめ!!
登録方法
-
ダッシュボード右上の忍者みたいなアイコンをクリック
-
Account Settingをクリック -
最初に
profileを記入し、その後、billingをクリックし、Add Credit Cardをクリック -
住所、クレジットカードを入力する(住所は英語で記入する)
次にターミナルから直接Herokuアプリを作成および管理するために、Herokuコマンドラインインターフェイス(CLI)を使用する
その方法
- ターミナルに以下を入力する
brew tap heroku/brew && brew install heroku
heroku login
- これでメールアドレスとパスワードを入力できたらOKです!!
次にアプリの準備をする
- (今回はアプリがある前提で話を進めていきます)
自前のアプリをアップする時の注意事項
-
トップページを設定していること
routes.rbの中にroot to 'コントローラー名/アクション名'を設定すればOK -
DBは
PostgreSQLになっているか確認
**config/database.yml**を確認し、adapterがPostgreSQLになっているか確認 -
公開したいアプリをGitのmasterブランチにコミット済であること
もしコミットしてない場合は、コミットする -
Github連携、自動デプロイを行いたい方は、Githubにリポジトリを作り、プッシュする。
herokuのデフォルトDBはPostgreSQLである。
デプロイの準備
-
herokuでアプリを公開するには、herokuアプリを作成する必要がある。
-
以下をターミナルに入力する
heroku create 自分が作ったアプリ名
【注意事項】
-
アプリ名は小文字・数字・ダッシュ(-)のみ入力可能。また、世界で誰も使用していない必要がある
-
アプリ名を指定していない場合、自動で決まる
- ここで使用したアプリ名はURLで使用される
herokuにデプロイする
(ここでは最も単純な方法を紹介)
- 以下をターミナルに入力
git push heroku master
- 上記が問題なく終わったら、以下をターミナルに入力する
heroku open
**ここでWe're sorry, but something went wrong**というエラーが出たら、
次のコードをターミナルに入力したらどうだろうか。
heroku run rails db:migrate
(ちなみに自分も上記のようなエラーが出た時、こちらを入力したら、エラーがなくなった)
(参考)自動デプロイ方法
(参照URL)
https://qiita.com/sho7650/items/ebd87c5dc2c4c7abb8f0#%E8%87%AA%E5%8B%95deploy%E3%81%A3%E3%81%A6
-
herokuのダッシュボードの
deployをクリック -
deployment methodのgithubのマークをクリック -
少しすると、
Connect to GitHubというのが出てくるので、これをクリック -
そうしたらGitHubの許可画面が出てくるので、
Authorize herokuをクリック
これで問題がなければ、検索画面へと移行する
-
reponameには自分のアプリのリポジトリ名を入力し、入力完了したら、Searchボタンをクリックする -
そうしたら、自分のアプリのリポジトリ名が検索欄の下に出るのでその右にある
Connectボタンをクリックする
Automatic deploysとManual deproyが表示されたら成功
-
Automatic deploysのところに、Wait for CI to pass before deployという項目があり、そこにチェックマークを付けて、Enable Automatic Deploysを押すと、自動デプロイ設定が完了する
最後に
今回herokuのデプロイについて簡単な流れを書いたが、ミスがなければ、比較的容易にデプロイできると感じた。
ただし、git pushすることを忘れたりすると、エラーでデプロイできないなどするので、git push heroku masterを行う際は、ちゃんとgit pushを忘れずにした方がいいと思った。