デプロイする方法
デプロイの方法を自分の備忘録として残しておきます。
GitHubにご自身のアプリがmasterにマージされた状態と言う前提条件で進めます。
まずHerokuと言うサービスを使います
Herokuの新規登録ページ
https://signup.heroku.com/login
ここで必要な項目を入力したらメールが届くのでそこに入って以下の入力をしましょう!
※パスワードは英数・数字・記号の3つを含み8文字以上を入力しましょう。
なんかこんなやつがでてきたら登録完了⬇︎
下のような画面が出てきたら画面下の「Accept」をクリックしてください⬇︎
Herokuのトップ画面に行けたらおk⬇︎
Herokuの注意点
Herokuは基本的に無料で利用が可能ですが、使用するデータベースの設定がデフォルトでPostgreSQLというRDBMSになっています。
HerokuでMySQLを使用する為にはクレジットカードの登録が必須となっているので、アカウント管理ページのBillingからカード情報を登録しましょう。
クレカの登録
私はMySQLを使いたのでクレカを登録します(別にしない人は飛ばしてください)
以下のスクショの手順で進めましょう
クレジットカードの情報を入力
以下のような画面になれば登録完了!
Heroku CLIのインストール
インストールする前にHerokuにアップしたいディレクトリに移動してください。
今回はprojectディレクトリをアップする手順で説明します
% brew tap heroku/brew && brew install heroku
Herokuのバージョン確認コマンド↓
% heroku --version
heroku/7.40.0 darwin-x64 node-v12.16.2 # こんなやつが出てきたらおk
# Herokuへログインするためのコマンド
% heroku login --interactive
=> Enter your Heroku credentials.
# メールアドレスを入力し、エンターキーを押す
=> Email:
# パスワードを入力して、エンターキーを押す
=> Password:
Heroku createコマンド
% heroku create アプリ名
% heroku create アプリ名
ちゃんとできたか確認のコマンド⬇︎
% git config --list | grep heroku
fatal: not in a git directory以外が表示されていれば 次に進みましょう
ClearDBアドオンの追加
ClearDBアドオンとは、MySQLを使うためのツールです。ClearDBというデータベースサービスが提供しているアドオンで、これを追加することにより、HerokuでMySQLを使用できるようになります。
% heroku addons:add cleardb
設定の変更
アドオンを追加したけどまだその設定ができていないので以下のコマンドを実行
% heroku_cleardb=`heroku config:get CLEARDB_DATABASE_URL`
これでClearDBデータベースのURLを変数heroku_cleardbに格納できました。
% heroku config:set DATABASE_URL=mysql2${heroku_cleardb:5}
これでデータベースのURLを再設定できました。
AjaxAppではmysql2というGemを使用しているので、DATABASE_URLの冒頭がmysql2://に変更されていることも確認しておきましょう。
credentials.yml.encの中身の確認
以下のコマンドを実行して中身を確認
% EDITOR="vi" bin/rails credentials:edit
以下のような画面になったらおk
確認したら「escキー」→「:」→「q」と入力し、「enterキー」を押して credentials.yml.encを閉じる
環境変数の設定
heroku configコマンド
Heroku上で環境変数の参照・追加・削除等をする場合に用います。環境変数の追加であればheroku config:set 環境変数名="値"と実行します。そうすることによって、Heroku上で環境変数を追加できます。
以下のコマンドをターミナルで実行
% heroku config:set RAILS_MASTER_KEY=`cat config/master.key`
% heroku config
以下のような感じになっていたらおk
アプリケーションをプッシュ
以下のコマンド2つを実行してアプリケーションをプッシュ
% heroku stack:set heroku-18 -a アプリケーション名
% git push heroku master
プッシュが成功したら以下のコマンドでマイグレーションを実行
% heroku run rails db:migrate
公開の確認
以下のコマンドでいろいろな設定を確認することができる
% heroku apps:info
上記のコマンドで実行したあと、その項目の中にWeb URL: https://....アプリのURL
があるのでそれがWEBで公開されているURLになる
% heroku config
上記はherokuの環境変数やデータベース設定を確認するコマンドになる。
もしそのURLんびアクセスしてエラーが出たら(汗
以下のコマンドを実行してヒントを得る
% heroku logs --tail --app アプリ名
「heroku logs アプリ名」のコマンドでも確認できるが、「--tail」オプションを使うことによって最新の10行のログのみを表示してくれるようにする
解説なんて不要だぁ!な、せっかちさん用コマンドのみのまとめ
ログインコマンド
% heroku login --interactive
Heroku上で作成
% heroku create アプリ名
ClearDBアドオンの追加
% heroku addons:add cleardb
設定の変更
% heroku_cleardb=`heroku config:get CLEARDB_DATABASE_URL`
データベースの再設定
% heroku config:set DATABASE_URL=mysql2${heroku_cleardb:5}
中身の確認、確認したら「escキー」→「:」→「q」と入力し、「enterキー」
% EDITOR="vi" bin/rails credentials:edit
環境変数の設定
% heroku config:set RAILS_MASTER_KEY=`cat config/master.key`
アプリのプッシュ
% heroku stack:set heroku-18 -a アプリケーション名
% git push heroku master
マイグレーションの実行
% heroku run rails db:migrate
設定の確認
% heroku apps:info
最後まで見ていただいてありがとうございます!
誰かのお役に立てれば幸いです!
Author And Source
この問題について(デプロイする方法), 我々は、より多くの情報をここで見つけました https://qiita.com/qwtr/items/71f459f6d642d707c16e著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .