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

Railway を使って Expressアプリをデプロイする手順を解説します。データベース接続、環境変数、Dockerfile の利用まで、4つのデプロイ方法を網羅します。

Share

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

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

Express は、Node.js のための高速で柔軟なウェブアプリケーションフレームワークです。シンプルかつ最小限のアプローチでウェブサーバーや API を構築できることで知られています。

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

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

Express アプリの準備

既に Express アプリがある場合は、このセクションをスキップしてください。

1. アプリの作成とローカルでの実行

# アプリケーションの雛形を作成
npx express-generator --view=pug helloworld
cd helloworld
 
# 依存関係をインストール
npm install
 
# アプリケーションを起動
npm start

ブラウザで http://localhost:3000 にアクセスし、動作を確認します。

2. データベースの接続設定

ここでは PostgreSQL を使用します。

# pg-promise をインストール
npm i pg-promise

routes/index.js を開き、データベースに接続して現在時刻を取得するように変更します。

const express = require('express');
const pgp = require('pg-promise')();
// 環境変数からデータベースURLを取得
const db = pgp(process.env.DATABASE_URL); 
const router = express.Router();
 
/* GET home page. */
router.get('/', function(req, res, next) {
  db.one("SELECT NOW()")
    .then(function (data) {
      res.render('index', { title: 'Hello World, Railway!', timeFromDB: data.now });
    })
    .catch(function (error) {
      console.error("ERROR:", error);
      res.status(500).send("Error querying the database");
    });
});
 
module.exports = router;

views/index.pug も修正して、取得した時刻を表示できるようにします。

extends layout
 
block content
  h1= title
  p Welcome to #{title}
  p This is the time retrieved from the database:
  p #{timeFromDB}

Railway へのデプロイ

方法1: GitHub リポジトリからデプロイ

  1. プロジェクトの作成: Railway で新しいプロジェクトを作成し、「Deploy from GitHub repo」を選択します。
  2. リポジトリの選択: 自分の Express プロジェクトのリポジトリを選びます。
  3. データベースの追加: キャンバスで右クリックし、「Database」→「Add PostgreSQL」を選択してデータベースサービスを追加します。
  4. 環境変数の設定: アプリケーションのサービス設定で、DATABASE_URL という名前の変数を追加し、値を ${{Postgres.DATABASE_URL}} に設定します。これにより、データベースサービスの接続情報が参照されます。
  5. デプロイ: 「Deploy」ボタンをクリックします。
  6. ドメインの生成: デプロイ完了後、サービスの「Settings」→「Networking」で「Generate Domain」をクリックして公開 URL を取得します。

方法2: Dockerfile を使う

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

# Node の公式イメージを使用
FROM node:lts
 
# アプリケーションディレクトリを作成
WORKDIR /app
 
# ローカルのコードをコンテナにコピー
COPY . ./
 
# 依存関係をインストール
RUN npm ci
 
# アプリケーションを起動
CMD ["npm", "run", "start"]

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


この記事では、Express アプリを Railway にデプロイする主要な方法を説明しました。自分のセットアップに合った方法を選び、シームレスなデプロイを実現してください。

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

Read more

サービス更新履歴

ここでは、LiveQのサービス・製品への変更を全て紹介しております。 このページは大きな変更があった場合に更新されます。 いつごろにどのような機能がリリースされたかが分かります。 2026年6月: 高速化・安定化 * 5月よりサーバーおよびアプリケーションの大型リニューアルに取り組み、6月に読み込み速度の向上や、大規模アクセス時にも安定して高速に動作するように変更をおこないました。 2026年4月: 画像スライド * 新たなスライドの種類として画像スライドを追加しました。 * PowerPoint, PDFファイルを一括インポートし、画像スライドとして追加する機能を追加しました * そのほか多数の細かな変更(操作性などのデザイン改善や、不具合)をおこないました 2026年3月: ワードクラウド、コメントのAIモデレーション(監視) * 新たなスライドの種類としてワードクラウドを追加しました * コメントをAIで自動監視する機能をリリースしました * そのほか細かな改善や不具合の修正をおこないました 2026年2月: 有料プランのデータエクスポート

By 阿部 隼也

チームメンバーを招待する方法

チームメンバーを追加するには、招待する必要があります。 その招待方法を紹介します。 招待可能なチームメンバーの数は、ご利用のプランによって異なるため、事前にご確認ください。 チームページの「新しいチームメンバーを招待」にて、招待するメンバーのメールアドレスを入力し、「招待を送信」をクリックします。 招待された側で招待を承認 次に、招待された側の方によって招待を承認する必要があります。 ※この承認にはLiveQのアカウントが必要となりますので、必ず事前にご登録ください。 下記のような招待メールが届きます。 件名:【LiveQ】チームへの招待が届いています 差出人:[email protected] 既にLiveQに登録済みの方はそのまま「招待を承認して参加する」ボタンをクリックします。 まだLiveQに登録していない方は、登録後、同様に承認ボタンをクリックします。 チームを切り替える 招待を承認すると、チームページに下記のように「チーム切り替え」ができるようになります。 招待したユーザーにもメールが届きます 招待が承認されると、招待したユーザーに

By 阿部 隼也