プログラミングマガジン

プログラミングを中心にIT技術をできるだけわかりやすくまとめます。

  • ホーム
  • インフラ
  • 【Heroku】概要やRailsをアップロードする手順
 
 
     
  • サーバー言語  
    • Python
    • Ruby
    • PHP
    • SQL
  •  
  • インフラ  
       
    • AWS
    •  
    • 基本
    • Git
  • Web
       
    • Web開発
    • JavaScript
    • Vue.js
    • React
  •  
  • 設計  
       
    • 実装設計
    • DB設計
  • 問い合わせ
  

【Heroku】概要やRailsをアップロードする手順

12.22

  • miyabisan2
  • コメントを書く

この記事は2分で読めます

Herokuとは?

Paasと呼ばれるクラウドサービスの一種で無料で使えるプランもあります。元々Rubyのアプリをホスティングするサービスでしたが、今はPHP等他のプログラミング言語に対応しています。

無料プランかつクレジット登録なしの場合

  • 月550時間まで無料
  • 30分間アクセスがなければスリープ状態になる。(スリープ状態の際は無料枠の時間は減りません。)
  • DBはPostgreSQLのみ利用可能
  • 独自ドメインは利用不可
  • 同時に立ち上げることができるアプリは1つまで(有料なら複数可能)

Herokuの事前設定(Railsの場合)

Railsの設定

Gemfile

HerokuではPostgreSQLしか使えません。なので、開発環境にSQLiteを使っている場合は上記のように「group :development, :test do」に移動させます。そうすることで開発もしくはテスト時のみにSQLiteが利用される設定になります。

1
2
3
4
5
6
group :development, :test do
  # Call 'byebug' anywhere in the code to stop execution and get a debugger console
  gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
  # Use sqlite3 as the database for Active Record
  gem 'sqlite3', '~> 1.3.6' ★移動させる。
end

下記の設定をして本番環境のみにPostgreSQLが使われるようにします。

1
2
3
group :production do
  gem 'pg', '~> 0.18.4'
end

RailsアプリのGemfileがあるディレクトリに移動して下記コマンドを実行します。

1
bundle install --without production

config/database.ymlの設定

production環境の設定を下記のように修正します。

1
2
3
4
production:
  <<: *default
  adapter: postgresql
  encoding: unicode

encoding: unicode

日本語も使える設定になります。

config/environments/production.rbの設定

下記の箇所をfalseからtrueに書き換えます。アセット(JSやCSS、画像ファイル)のプリコンパイルを行い高速にページを表示できるようになります。

1
2
  # Do not fallback to assets pipeline if a precompiled asset is missed.
  config.assets.compile = true

config/routes.rb

下記のようにrootが設定されているか確認します。設定されていない場合はエラーになるので注意です。

1
root 'XXX#index'

Gitの設定

Railsアプリのディレクトリで下記コマンドを実行します。

1
git init

下記コマンドを実行してgitのステージングエリアに追加します。

1
git add -A

コミットします。

1
git commit -m "コメント"

Heroku CLIの設定

https://devcenter.heroku.com/articles/heroku-cli

上記のHeroku-CLIのURLからダウンロードしてインストールします。Macの場合は下記コマンドを実行すればインストールできるようでした。

1
brew tap heroku/brew && brew install heroku

インストールされたかの確認は下記コマンドにて行います。(バージョンが出力されればインストール完了です。)

1
heroku -v

Herokuにログインする。

事前にHerokuのアカウントを作成した上で下記コマンドを実行します。

1
heroku login

HerokuとRailsアプリの関連づけを行う。

1
heroku create アプリ名

アプリ名は公開する際のURLにも利用されます。

RailsアプリをHerokuにデプロイする。

下記コマンドを実行するだけでデプロイを行ってくれます。(非常に簡単です。)

1
git push heroku master

DBのマイグレーションを行います。

1
heroku run rails db:migrate

公開されたアプリを確認する。

1
heroku apps:info

「Web URL」に公開されたURLが表示されます。

Herokuからアプリを削除する。

1
heroku apps:destroy --app アプリ名

スポンサーリンク
  • 2019 12.22
  • miyabisan2
  • コメントを書く
  • インフラ
  • Tweets Twitter
  • このエントリーをはてなブックマークに追加
  • LINEで送る

関連記事

  1. 2020 06.16

    【インフラ】設計方針

  2. 2021 12.02

    【インフラ】CI/CDツールまとめ

  3. 2021 12.02

    【インフラ】Dockerを本番環境でどう動かすか?(EC2、ECSなど)

  4. 2021 12.03

    【インフラ】本番環境を意識したCI/CD設計、複数アカウント管理

  5. 2021 12.02

    【インフラ】「GitLab」と「GitHub」、「Code Commit」の違い

  6. 2021 12.11

    【マイクロサービス】「コンテナオーケストレーション」とは?

  • コメント ( 0 )
  • トラックバック ( 0 )
  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

返信をキャンセルする。

【Ruby on Rails】デバッグの仕方(Dock…

【Ruby】REPL(IRB、pry)について

RETURN TOP

著者プロフィール

エンジニア歴10年で過去に業務系、Webデザイン、インフラ系なども経験あります。現在はWeb系でフロントエンド開発中心です。

詳細なプロフィールはこちら

スポンサーリンク

カテゴリー

  • Android
  • AngularJS
  • API
  • AWS
  • C++
  • CSS
  • cursor
  • C言語
  • DDD
  • DevOps
  • Django
  • Docker
  • Figma
  • Git
  • GitLab
  • GraphQL
  • gRPC
  • Hasura
  • Java
  • JavaScript
  • Kubernetes
  • Laravel
  • linux
  • MySQL
  • Next.js
  • nginx
  • Node.js
  • NoSQL
  • Nuxt.js
  • Oracle
  • PHP
  • Python
  • React
  • Redux
  • Rspec
  • Ruby
  • Ruby on Rails
  • Sass
  • Spring Framework
  • SQL
  • TypeScript
  • Unity
  • Vue.js
  • Webサービス開発
  • Webデザイン
  • Web技術
  • インフラ
  • オブジェクト指向
  • システム開発
  • セキュリティ
  • その他
  • データベース
  • デザインパターン
  • テスト
  • ネットワーク
  • プログラミング全般
  • マイクロサービス
  • マイクロソフト系技術
  • マルチメディア
  • リファクタリング
  • 副業
  • 未分類
  • 業務知識
  • 生成AI
  • 設計
  • 関数型言語
RETURN TOP

Copyright ©  プログラミングマガジン | プライバシーポリシー