Node.js

サンプルリポジトリを使用するには、MyKinstaアカウントを作成する必要があります。GitHubリポジトリから弊社ウェブアプリケーションサーバーに以下Node.jsアプリケーションをデプロイ、セットアップする方法をご紹介します。

Node.js

  1. MyKinstaにログインし、「アプリケーション」>「アプリケーションを追加」をクリックして、「Gitリポジトリ」および「パブリックリポジトリ」を選択します。また、以下を設定してください。
  2. 名前」を入力し、「ロケーション」を選択します。「リソース」フィールドからPodサイズを選択して、「作成とデプロイ」をクリックします。

デプロイに際し、ウェブプロセスのstartコマンドが自動検出され、package.jsonファイルで定義された依存関係も自動インストールされます。デプロイ完了後、すぐにアプリケーションをご利用いただけます。アプリケーションのURLには、Kinstaのウェルカムページが表示されます。

Node.jsのデプロイ完了後に表示されるKinstaのウェルカムページ
Node.jsのデプロイ完了後に表示されるKinstaのウェルカムページ

Node.jsアプリのデプロイ方法について動画での解説もご用意しています

ウェブサーバーのセットアップ

ポート

PORT環境変数は自動的に設定されるため、お客様ご自身で定義したりアプリケーションにハードコーディングで記述したりする必要はありません。サーバーポートを参照するには、以下のようにprocess.env.PORTを使用してください。

app.listen(process.env.PORT, () => {
console.log(`Hello World Application is running on port ${process.env.PORT}`)
})

startコマンド

アプリケーションをデプロイすると、startコマンドとして自動的にnpm startを持つウェブプロセスが検出されます。サーバーを実行にはこのコマンドを使用します。別のコマンドを使用する場合は、MyKinstaでウェブプロセスの編集を行ってください。

"scripts": {
"start": "node server.js"
},

環境変数

Node.jsアプリケーションのNODE_ENV環境変数は、デフォルトでproduction設定されていないため、追加が必要になります。

デプロイメントライフサイクル

デプロイメントを開始すると(アプリケーションの作成、またはコミットの失敗による再デプロイ)、npm buildコマンド、その後にnpm startコマンドが実行されます。

Dockerfileを使用したNode.jsアプリケーション

  1. MyKinstaにログインし、「アプリケーション」>「アプリケーションを追加」をクリックして、「Gitリポジトリ」および「パブリックリポジトリ」を選択します。また、以下を設定してください。
  2. 名前」を入力し、「ロケーション」を選択します。「リソース」フィールドからPodサイズを選択して、「作成とデプロイ」をクリックします。

Dockerfileには、startコマンドCMD行またはENTRYPOINT命令のいずれかに含める必要があります。デプロイの完了後は、すぐにアプリケーションをご利用いただけます。アプリケーションのURLには、Hello Worldページが表示されます。

Dockerfileを使用したNode.jsのデプロイ後に表示されるHello Worldページ
Dockerfileを使用したNode.jsのデプロイ後に表示されるHello Worldページ

デプロイメントライフサイクル

弊社では、アプリケーション作成時にCMDの命令からプロセスを作成します。

CMD ["npm", "run", "start"]

リポジトリでこの命令を変更しても、プロセスは自動的に更新されないため、MyKinsta内アプリケーションの「プロセス」画面でstartコマンドも編集する必要があります。プロセスを編集する必要があります。

メール送信用のNode.jsアプリケーション

弊社ウェブアプリケーションサーバーを利用して、GitHubリポジトリからSendGrid経由でメールを送信するNode.jsアプリケーションをデプロイ、セットアップする方法の一例をご紹介します。

弊社では、サーバーからのアウトバウンドのメールを標準でサポートしていません。SendGridまたはMailchimpなどのようなメール送信サービスを経由してメールを送信すると、トランザクションやキャンペーンメールのより高い柔軟性と成功率が期待できます。

  1. MyKinstaにログインし、「アプリケーション」>「アプリケーションを追加」をクリックして、「Gitリポジトリ」および「パブリックリポジトリ」を選択します。また、以下を設定してください。
  2. 名前」を入力し、「ロケーション」を選択します。「リソース」フィールドからPodサイズを選択して、「作成とデプロイ」をクリックします。
  3. アプリケーションを作成したら、「環境変数」>「環境変数を追加」をクリックして、以下を追加します。
    • SENDGRID_API_KEY:SendGridからのAPIキー
    • TEST_EMAIL_TO_ADDRESS:テストメールの送信先アドレス
    • TEST_EMAIL_FROM_ADDRESS:テストメールの送信元アドレス
    • TEST_ENDPOINT:テストメールを送信するトリガーとして使用するエンドポイント。少なくとも8文字のランダムな文字列を使用してください。
  4. デプロイメント」>「デプロイする」>「アプリケーションをデプロイ」をクリックします。

デプロイの完了後は、すぐにアプリケーションをご利用いただけます。アプリケーションのURLには、Hello Worldページが表示されます。

メール送信用Node.jsのインストール完了後に表示されるHello Worldページ
メール送信用Node.jsのインストール完了後に表示されるHello Worldページ

メール送信のトリガー

ビルドのフェーズは不要です。startコマンドでnode server.js,を実行し、2つのエンドポイントのあるExpressサーバーが起動します。

  • /:Hello Worldメッセージを返すシンプルなページ
  • /${TEST_ENDPOINT}:テストメールをトリガーするページ

メールをトリガーするには、「デプロイメント」画面で確認できるデプロイのURLにテストエンドポイントを追加し、そのページにアクセスしてください。例えば、TEST_ENDPOINTo34nifnodhni4ofに設定され、最近のデプロイが「https://example.kinsta.app」にある場合は、ブラウザで「https://example.kinsta.app/o34nifnodhni4of」からテストメールを起動することができます。

テストメールが正常に送信されると、その旨を伝えるメッセージが表示されます。

Node.jsのメール送信完了を伝えるメッセージ
Node.jsのメール送信完了を伝えるメッセージ

SendGridで確認すると、以下のような受信完了メッセージが表示されます。

メール受信完了を伝えるSendGridのメッセージ
メール受信完了を伝えるSendGridのメッセージ
この記事は役に立ちましたか?

© 2013 - 2025 Kinsta Inc. 著作権所有。Kinsta®、MyKinsta®、DevKinsta®はKinsta Inc.が所有する登録商標です。登録商標WordPress®はWordPress Foundationの知的財産であり、登録商標Woo®並びにWooCommerce®はWooCommerce, Inc.の知的財産です。WordPress®、Woo®、WooCommerce®の当ウェブサイトでの使用は識別のみを目的としておりWordPress FoundationまたはWooCommerce, Inc.による推奨や承認を意味するものではありません。KinstaはWordPress FoundationまたはWooCommerce, Inc.により認定、所有されておらず、関連会社でもありません。 法的事項はこちらをご覧ください。