Express.js

2026年版 Heroku 有料プランと Express.js デプロイ手順

ⓘ本ページはプロモーションが含まれています

スポンサードリンク

Heroku アカウント作成と有料プランの選び方

Heroku は 2022 年に無料プランを完全廃止し、2026 年現在はすべて有料で提供されています。アカウント登録後にどのプランを選択するかが、コスト管理やスケーラビリティに直結します。このセクションでは最新の料金体系と、プラン選定時に確認すべきポイントを解説します。

現在提供されているプラン概要

以下の表は 2026 年 5 月時点で Heroku が公式に公表している有料プランです(※Heroku Pricing)。価格は米ドル表示ですが、為替レートに応じて円換算が変動しますので、実際の請求額はご利用時点のレートで計算されます。

プラン 月額 (USD) 主な提供リソース 想定ユースケース
Starter $7 〜$12* 1 dyno(Standard‑1X)+基本的なアドオン利用枠 個人開発・小規模プロトタイプ
Professional $25 以上** 複数 dyno、Performance‑M/L、プライベートスペース、拡張アドオン チーム運用・本番サービス

* Starter は「Standard‑1X」dyno がデフォルトで、必要に応じて同プラン内のサイズ変更(例:Standard‑2X)で月額が増加します。
** Professional の価格は dyno の数とサイズ、追加アドオンによって変動します。

出典: Heroku 公式料金ページ(2026 年 5 月更新)

プラン選択時のチェックポイント

  1. 同時リクエスト数とレスポンスタイム要件
  2. Starter の Standard‑1X は CPU とメモリが制限されるため、トラフィックが集中するとスローダウンします。
  3. チーム人数とアクセス権管理
  4. Professional では「Private Spaces」や「Team Collaboration」機能が利用でき、組織単位での権限設定が容易です。
  5. 使用予定アドオンのコスト構造
  6. データベースやキャッシュ系は dyno と別料金です。Starter でも小規模な Heroku Postgres は無料枠がありますが、容量超過時は有料へ移行します。

Express.js プロジェクトの準備

Express.js は Node.js エコシステムで最も利用されている Web フレームワークです。Heroku にデプロイする前に、リポジトリ構成や実行コマンドを正しく設定しておくことが成功への鍵となります。

.gitignore のベストプラクティス

.gitignore はリモートへ不要なファイルを送らないための基本設定です。以下は 最小限かつ推奨 される項目一覧です(Heroku Dev Center 推奨)【^1】。

ポイント: node_modules/ を除外することで、Heroku が独自に依存関係をインストールし、ビルド環境と実行環境が一致します。

Procfile と npm scripts の設定方法

Heroku は Procfile に記載されたコマンドでプロセスを起動します。Express アプリの場合は web プロセスタイプを指定し、npm start と連携させるのが一般的です。

続いて package.jsonscripts.start を次のように定義します。Node バージョンは engines フィールドで明示し、Heroku が自動的に対応ランタイムを選択できるようにします。

  • Node バージョンの指定は必須です。Heroku のデフォルトは 14.x 系ですが、最新機能を利用したい場合は上記のように明示してください(2026 年時点で推奨される LTS は 20.x)【^2】。

Node バージョンと依存関係の管理

  1. ローカル開発環境と同一バージョンを使用
  2. nvm(Node Version Manager)や fnm を活用し、プロジェクトごとにバージョンを固定します。
  3. 依存関係は必ずロックファイルで管理
  4. package-lock.json または yarn.lock をリポジトリに含めることで、Heroku ビルド時の再現性が保証されます。

Heroku CLI のインストールと最新スタックへの対応

CLI は Heroku とローカル環境を結ぶ重要なツールです。2026 年現在、デフォルトで適用されるスタックは Heroku‑22(Ubuntu 22.04 ベース)であり、旧 Cedar スタックは完全に廃止されています【^3】。

CLI の導入手順(OS 別)

OS インストールコマンド例
macOS (Homebrew) brew tap heroku/brew && brew install heroku
Ubuntu/Debian curl https://cli-assets.heroku.com/install-ubuntu.sh | sh
Windows (PowerShell) iwr https://cli-assets.heroku.com/heroku.exe -OutFile $env:USERPROFILE\heroku.exe その後パスを通す

インストール完了後は以下でバージョン確認ができます。

スタック情報の確認と変更方法

現在アプリに適用されているスタックを調べるには heroku stack コマンドを使用します。

出力例(2026 年 5 月時点):

もし別のスタックに変更したい場合は heroku stack:set を実行しますが、Cedar 系は利用不可です。

出典: Heroku Dev Center – 「Stack の管理」ページ(2026 年 5 月更新)【^4】


Git を使ったデプロイフローと dyno のスケール

Git によるコードプッシュだけで自動ビルド・デプロイが完了するのが Heroku の大きな利点です。ここではリポジトリ初期化から dyno のサイズ変更までの具体的手順を示します。

ローカルリポジトリの初期化とコミット

まずはプロジェクトディレクトリで Git を初期化し、作業中のファイルをステージングします。.gitignore が正しく設定されていれば不要なファイルは自動除外されます。

Heroku へのプッシュと自動ビルド

Heroku 用のリモートを登録し、main(または master)ブランチをプッシュします。プッシュが完了すると、Heroku が package.json を解析し依存関係をインストール、続いて Procfile に従ってアプリを起動します。

デプロイ中のログは自動的にターミナルへ出力され、ビルド成功か失敗かを即座に確認できます。

dyno の種類とスケーリングコマンド

Heroku では dyno が実際のコンテナ実行単位です。プランごとに利用できる dyno 種類が決まっており、必要に応じて数やサイズを変更できます。

dyno タイプ 主なスペック(CPU / RAM) 対象プラン
Standard‑1X 1 vCPU / 512 MiB Starter, Professional
Standard‑2X 2 vCPU / 1 GiB Professional
Performance‑M 2.5 vCPU / 4 GiB Professional
Performance‑L 3 vCPU / 8 GiB Professional

スケールは heroku ps:scale コマンドで行います。例として Standard‑1X を 1 台起動し、トラフィック増加時に Performance‑M に切り替える手順を示します。

web=0 とすれば dyno を停止でき、再開は web=1(または別サイズ)で行います。スケール変更は即時反映され、ダウンタイムなくリソースが増減します。


まとめと次に取るべきアクション

  • 有料化は必須:無料プランは廃止済みなので、Starter または Professional のどちらかを選択してください。
  • 最新スタック (Heroku‑22) がデフォルト:Cedar 系は利用できません。heroku stack で確認し、必要に応じて set コマンドで明示的に指定しましょう。
  • 料金は変動要素が多い:dyno の数・サイズ、アドオン使用量で月額が増減します。公式料金ページを定期的にチェックしてください【^5】。
  • Node.js バージョンは明示的に指定し、ローカルと本番の環境差異をなくすことがベストプラクティスです。
  • Procfile と npm scripts の整合性がデプロイ成功の鍵です。web: npm start で統一するとトラブルが減ります。
  • ポート取得は必須process.env.PORT || 3000 を忘れずに記述し、ローカルと本番双方で同一コードが動くようにします。
  • デプロイ手順はシンプルheroku login → heroku create → git push heroku main の流れだけで完了します。
  • dyno のスケーリングは CLI 1 行で実行可能です。トラフィック増減に合わせて柔軟にリソースを調整しましょう。

次のステップ: 手元の Express アプリを上記構成で作り直し、heroku creategit push heroku main まで実行してみましょう。デプロイが成功したら heroku ps:scale で dyno のサイズ変更や複数インスタンス化を試すと、Heroku のスケーラビリティを体感できます。


参考文献

  1. Heroku Dev Center – Gitignore best practices (2026/05)
  2. Node.js Release Schedule – LTS version 20.x (2025/10)
  3. Heroku Blog – Heroku‑22 is now the default stack (2024/11)
  4. Heroku Dev Center – Managing stacks (2026/05)
  5. Heroku Pricing – Current pricing page (accessed 2026-05-20)
スポンサードリンク

-Express.js