0
0

More than 3 years have passed since last update.

Rails6(Cloud9+Ubuntu)+MySQLでherokuデプロイ

Posted at

1 Heroku CLI Download and install

$ sudo curl https://cli-assets.heroku.com/install-ubuntu.sh | sh

$ heroku --version

2 Heroku ログイン
※クレジットカードを登録したアカウント

$ cd appname
$ heroku login --interactive
# メールアドレスとパスワードを求められるので、入力しエンターをクリック
Enter your Heroku credentials:
Email: test@test.com
Password: *********

3 次に鍵をHerokuに追加します。

heroku keys:add

4 Herokuにアップロードしますか?と聞かれるのでyを入力する

? Would you like to upload it to Heroku? (Y/n)

#すると以下のようなコードが出てきたら成功です。
Uploading /home/ec2-user/.ssh/id_rsa.pub SSH key... done

5 heroku アプリ作成

$ heroku create appname

6 ※heroku DB設定
igniteプラン(無料)で作成

$ heroku addons:create cleardb:ignite --app appname

7 ※環境変数設定

$ heroku config 
=== <アプリの名前> Config Vars
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'

 ※ ##もう一度 heroku configをして、DATABAS_URL、CLEARDB_DATABASE_URLの始まりがmysql2で始まっているか確認

#謝り例
CLEARDB_DATABASE_URL:     mysql://b60b5336b9085d:754f140c@us-cdbr-iron-east-05.cleardb.net/heroku_f69d4fc63e3b43f?reconnect=true
DB_HOSTNAME:              us-cdbr-iron-east-05.cleardb.net
DB_NAME:                  heroku_f69d4fc63e3b43f
DB_PASSWORD:              754f140c
DB_PORT:                  3306
DB_USERNAME:              b60b5336b9085d
LANG:                     en_US.UTF-8
RACK_ENV:                 production
RAILS_ENV:                production
RAILS_LOG_TO_STDOUT:      enabled
RAILS_SERVE_STATIC_FILES: enabled
SECRET_KEY_BASE:          0d58d7c950379d4bfe741b3ae465b46aaa159ae398c2aaaea5010ae2d817b308a90a7d4702e6281ad609c94de1acf03cb50c1e39d21d9e66af636d812f2e823

※正常な例
CLEARDB_DATABASE_URL:     mysql2://b60b5336b9085d:754f140c@us-cdbr-iron-east-05.cleardb.net/heroku_f69d4fc63e3b43f?reconnect=true
DB_HOSTNAME:              us-cdbr-iron-east-05.cleardb.net
DB_NAME:                  heroku_f69d4fc63e3b43f
DB_PASSWORD:              754f140c
DB_PORT:                  3306
DB_USERNAME:              b60b5336b9085d
LANG:                     en_US.UTF-8
RACK_ENV:                 production
RAILS_ENV:                production
RAILS_LOG_TO_STDOUT:      enabled
RAILS_SERVE_STATIC_FILES: enabled
SECRET_KEY_BASE:          0d58d7c950379d4bfe741b3ae465b46aaa159ae398c2aaaea5010ae2d817b308a90a7d4702e6281ad609c94de1acf03cb50c1e39d21d9e66af636d812f2e823f

8 config/environments/production.rbを修正(追記)

config.assets.compile = true
config.assets.initialize_on_precompile=false

9 herokuへデプロイ

$ git init
$ git add -A
$ git commit -m "first"
$ git push heroku master

$ heroku run rake db:migrate
#seedも更新する場合は
$ heroku run rake db:seed
0
0
1

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
0