AIイノベーションズ ブログ

【Railway】Fastifyをデプロイする方法

最終更新日:
阿部隼也
阿部 隼也
AIイノベーションズ 代表取締役社長 | x.com/ai_abe_shunya
リアルタイムアンケートツール: LiveQ

お悩み相談AIチャット: AI相談.com

Railwayはこちら (←このリンクから登録すると20ドル分のクレジットがもらえます)

Fastifyアプリをデプロイする方法

Fastify は、卓越した開発者体験を提供するために設計された、高性能で低オーバーヘッドな Node.js 用ウェブフレームワークです。

この記事では、以下の4つの方法で Fastify アプリを Railway にデプロイする手順を説明します。

  1. テンプレートからワンクリックでデプロイ
  2. GitHub リポジトリからデプロイ
  3. Railway CLI を使ってデプロイ
  4. Dockerfile を使ってデプロイ

デプロイ方法

1. GitHub リポジトリからデプロイ

最も一般的な方法です。

  1. プロジェクトの作成: Railway で新しいプロジェクトを作成し、「Deploy from GitHub repo」を選択します。
  2. リポジトリの選択: デプロイしたい Fastify プロジェクトの GitHub リポジトリを選択します。
  3. デプロイ: 「Deploy Now」をクリックすると、Railway が自動的に package.json を検出し、依存関係をインストールしてアプリケーションをビルド・デプロイします。

デプロイが完了したら、サービスの「Settings」タブにある「Networking」セクションで「Generate Domain」をクリックすると、公開 URL が生成されます。

Note: Railway では、Fastify の .listen メソッドの host:: に設定する必要があります。これにより、アプリはパブリックネットワークとプライベートネットワークの両方で利用可能になります。正しく設定しないと、502 エラーが発生する可能性があります。

2. Dockerfile を使う

より詳細な制御が必要な場合は Dockerfile を使用します。

プロジェクトのルートに以下の内容で Dockerfile を作成します。

# Node.js 18 の alpine 公式イメージを使用
FROM node:18-alpine
 
# アプリケーションディレクトリを作成・移動
WORKDIR /app
 
# ローカルのコードをコンテナイメージにコピー
COPY . .
 
# プロジェクトの依存関係をインストール
RUN npm ci
 
# コンテナ起動時にウェブサービスを実行
CMD ["npm", "start"]

この Dockerfile を含むリポジトリをデプロイすると、Railway は自動的に Dockerfile を使ってビルドを行います。


次のステップ

Railway の体験を最大限に活用するために、以下のリソースもご覧ください。

Railwayはこちら (←このリンクから登録すると20ドル分のクレジットがもらえます)

リアルタイムアンケートツール: LiveQ

お悩み相談AIチャット: AI相談.com