初めてのポートフォリオ作成 #2
今回は「初めてのポートフォリオ作成」の#2です。
過去の日記はこちら
初めてのポートフォリオ作成 #0 - 大田区から発信するゆるゆる日記
初めてのポートフォリオ作成 #1 - 大田区から発信するゆるゆる日記
MySQLを使ったRailsアプリをherokuにデプロイしたので、その内容を書きます。
※下記の内容に不備がありましたら、コメント頂けると幸いです。また、下記の内容をご使用頂ける場合は自己責任でお願いします。
【目次】
環境
macOS 10.14.4
rails 5.2.3
ruby 2.6.3
mysql2 0.5.2
デプロイ手順
①railsアプリを作成する
②herokuに登録
③herokuのtoolbeltをインストール
④herokuのデータベース設定を行う
⑤mysqlをローカルにインストール
⑥bundle install
⑦git push heroku master
デプロイ
①railsアプリを作成する
$ rails new アプリ名 -d mysql
※「-d」は必ず小文字で。
②MySQLをローカルにインストール
※rootユーザーでMySQLにログインできるか、下記のコマンドを入力して確認。
$ mysql -u root
③herokuに登録
クラウド・アプリケーション・プラットフォーム | Heroku
④herokuのtoolbeltをインストール
◆コマンドラインツールでherokuを操作するためのツール(herokuコマンド)をインストールします。
The Heroku CLI | Heroku Dev Center
⑤herokuのデータベース設定を行う
◆herokuにログインする
$ heroku login
※「$ heroku login」コマンドは、内部で「~/.ssh」ディレクトリ内の公開鍵(SSH鍵)をHerokuに登録しているようです。
◆herokuにアプリを作成する。
<Railsアプリ名 ユーザー名>$ heroku apps:create [アプリ名]
※[アプリ名]には、herokuで既に登録されているアプリ名は使えない。
※[アプリ名]は、英数字とハイフンしか使えない。
※アプリがリモートリポジトリに作成されたか確認するには、下記のコマンドを入力する。
$ git remote -v
◆herokuにClearDB(MySQL)アドオンを「igniteプラン」で追加する。
$ heroku addons:create cleardb:ignite
※以下のエラーが出た場合は、herokuアカウントでクレジットカード情報の登録が必要です。「igniteプラン」であれば、クレジットカード情報を登録しても、料金が発生することはないらしい。
詳細はClearDB MySQL - Add-ons - Heroku Elementsを確認してください。
▸ Please verify your account to install this add-on plan (please enter a credit card) For more
▸ information, see https://devcenter.heroku.com/categories/billing Verify now at
▸ https://heroku.com/verify
◆ClearDBのURLを確認し、環境変数を設定する。
・ClearDBのURLを確認
$ heroku config
CLEARDB_DATABASE_URL: mysql://ユーザー名:パスワード@ホスト名/データベース名?reconnect=true
・環境変数を設定
$ heroku config:add DB_NAME='データベース名'
$ heroku config:add DB_USERNAME='ユーザー名'
$ heroku config:add DB_PASSWORD='パスワード'
$ heroku config:add DB_HOSTNAME='ホスト名'
$ heroku config:add DB_PORT='3306'
$ heroku config:add DATABASE_URL='mysql2://ユーザー名:パスワード@ホスト名/データベース名?reconnect=true'
※ClearDBのURLを参考に上記のコマンドをターミナルで実行してください。
※MySQLは、mysql2 gemを使っているので、「DATABASE_URL」は「mysql2」で始めてください。
・環境変数を確認する。
$ heroku config
CLEARDB_DATABASE_URL: mysql://ユーザー名:パスワード@ホスト名/データベース名?reconnect=true
DATABASE_URL: mysql2://ユーザー名:パスワード@ホスト名/データベース名?reconnect=true
DB_HOSTNAME: ホスト名
DB_NAME: データベース名
DB_PASSWORD: パスワード
DB_PORT: 3306
DB_USERNAME: ユーザー名
⑥「bundle install」を実行する
<Railsアプリ名 ユーザー名>$ bundle install
⑦「git push heroku master」を実行する
<Railsアプリ名 ユーザー名>$ git push heroku master
今後に向けて
今回もエラーが多発したので、そのエラーについて今後書いていきます。
Xcodeについても調べないとなー