LoginSignup
0
1

More than 3 years have passed since last update.

RailsアプリをHerokuにデプロイする【備忘録】

Last updated at Posted at 2019-11-04

環境

AWS Cloud9
Ruby 2.5.3
Rails 5.2.3

はじめに

Qiita初投稿です。
毎回、忘れてしまうので自分への備忘録として。

前提として

Herokuにて登録していること
Gitを使用していること

公式サイト: Heroku

とりあえずHerokuとは

PaaS(Platform as a Service)と呼ばれるサービスで、サーバコンピュータを提供してくれるサービスである

Herokuへログイン

HerokuをCloud9のターミナルから操作するためのコマンドツール(heroku-cli)をインストールする。

$ wget https://cli-assets.heroku.com/heroku-linux-x64.tar.gz -O heroku.tar.gz
$ sudo mkdir -p /usr/local/lib/heroku
$ sudo tar --strip-components 1 -zxvf heroku.tar.gz -C /usr/local/lib/heroku
$ sudo ln -s /usr/local/lib/heroku/bin/heroku /usr/local/bin/heroku

ターミナル上で、Heroku にログインします。

$ heroku login -i

Enter your Heroku credentials.
Email: Herokuに登録したメールアドレスを入力
Password: Herokuに登録したパスワードを入力

自分の作ったプロジェクトフォルダへ移動する。

cd ~/environment/自分で作成したプロジェクトフォルダ

Heroku アプリを作成する

ターミナルにてherokuコマンドが使えるようになるので操作する。

$ heroku create [Herokuアプリ名]

※例: test-sample-123
※すでにあるアプリ名があった場合重複はできない

リモートリポジトリ heroku の確認

$ git remote -v

Heroku用の設定

Herokuは標準はPostgreSQLなので開発環境でMySQL等、使用していた場合設定する

Gemfile
group :production do
  gem 'pg', '>= 0.18', '< 2.0'
end

開発環境で読み込む必要がないので --without production を付ける

$ bundle install --without production

database.yml も下記のように修正する

config/database.yml
production:
  adapter: postgresql
  encoding: unicode
  pool: 5
  database: message-board_production # 注意
  username: message-board # 注意
  password: <%= ENV['MESSAGE-BOARD_DATABASE_PASSWORD'] %> # 注意

注意: message-board、MESSAGE-BOARDはアプリ名で変わります。

Gitコミットを最新にする

$ git add .

$ git commit -m 'new heroku'

本番環境用にDBをマイグレーションする

$ heroku run rails db:migrate

デプロイ開始

$ git push heroku master
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