学生向けプログラミング入門 | 無料

学生向けにプログラミングを無料で解説。Java、C++、Ruby、PHP、データベース、Ruby on Rails, Python, Django

Heroku | 02 | production.rbの設定

↓↓クリックして頂けると励みになります。


01 | 料金とアプリケーションの作成】 << 【ホーム】 >> 【03 | Stripeの設定


Herokuデプロイ設定
Herokuデプロイ設定


Ruby on Railsで開発したアプリケーションをデプロイする際、開発時にdevelopment.rbファイルに記述してきた設定を本番環境用設定ファイル「config\environments\production.rb」に書き写し、新たに本番環境用設定を書き加える必要があります。
順を追って解説します。


「config\environments\production.rb」ファイルを編集していきます。

httpsの設定

https通信の設定を行い、SSLに対応させます。
47行目のコメントアウトを外します。

config.force_ssl = true


画像表示の設定

この設定を行わないと、デプロイした時に画像が表示されません。
29行目「config.assets.compile」を「true」にします。

config.assets.compile = true


メールの設定

67行目のコメントアウトを外し、「config.action_mailer.raise_delivery_errors」を「true」にします。

config.action_mailer.raise_delivery_errors = true


アマゾンS3の設定

:localのままだとデプロイ環境では画像を更新することができません。
アプリケーションで画像の更新を実装している場合は、Amazon S3の設定は必須です。
39行目の「config.active_storage.service = :local」の記述を「:amazon」に変更します。

config.active_storage.service = :amazon


開発環境の設定コピー

「config\environments\development.rb」での設定(65行目から)をコピーします。
115行目の「macoshigoto」の部分はご自分のherokuアプリ名を入れて下さい。



記述追加 config\environments\production.rb(115行目)

  # デバイスのメール設定
  config.action_mailer.default_url_options = { host: 'https://macoshigoto.herokuapp.com/' }

  #Gメールの設定
  config.action_mailer.delivery_method = :smtp

  config.action_mailer.smtp_settings = {
    address: "smtp.gmail.com",
    port: 587,
    enable_starttls_auto: true,
    authentication: "plain",
    user_name: 'win.rails.learn@gmail.com',
    password: 'ご自分のGメールパスワードを入れてください'
  }



リアルタイムメッセージ(action cable)を導入していて、postgresを利用する場合、「config\cable.yml」ファイルを編集する必要があります。


記述更新 config\cable.yml
8行目の「adapter」を「async」に変更します。
「url: <%= ENV.fetch("REDIS_URL") { "redis://localhost:6379/1" } %>」と「channel_prefix: Oshigoto_production」の行はコメントアウトして下さい。

development:
  adapter: async

test:
  adapter: test

production:
  adapter: async
  # adapter: redis
  # url: <%= ENV.fetch("REDIS_URL") { "redis://localhost:6379/1" } %>
  # channel_prefix: Oshigoto_production



herokuで使用するnodeのバージョンを固定するために「package.json」ファイルを編集します。


記述更新 package.json
22行目から24行目に記述を追加しています。カンマを忘れないようにしてください。
nodeのバージョンは、ご自分の開発環境でnode -vとして確認してください。

{
  "name": "amateur-report-world",
  "private": true,
  "dependencies": {
    "@popperjs/core": "^2.11.8",
    "@rails/actioncable": "^6.0.0",
    "@rails/actiontext": "^6.1.7-6",
    "@rails/activestorage": "^6.0.0",
    "@rails/ujs": "^6.0.0",
    "@rails/webpacker": "5.4.4",
    "bootstrap": "4.5.2",
    "dropzone": "5.5.1",
    "jquery": "3.6.0",
    "noty": "^3.2.0-beta-deprecated",
    "popper.js": "1.16.1",
    "raty-js": "2.9.0",
    "trix": "^1.2.0",
    "turbolinks": "^5.2.0",
    "webpack": "^4.46.0",
    "webpack-cli": "^3.3.12"
  },
  "version": "0.1.0",
  "engines": {
    "node": "14.21.3"
  },
  "devDependencies": {
    "webpack-dev-server": "^3"
  }
}



これで「production.rb」ファイルの設定は終了です。


01 | 料金とアプリケーションの作成】 << 【ホーム】 >> 【03 | Stripeの設定

↓↓クリックして頂けると励みになります。