Express.jsをコアモジュールとCLIとDockerでそれぞれ環境構築する方法
Express.jsの環境を構築する方法を紹介します。コードもGit Hubに掲載するので参考にしてください。
概要
Node.js ベースの Web フレームワークである Express.js の様々な環境構築方法について解説します。
本記事では、以下3通りの方法で環境構築をする方法を紹介します。
- Express.jsのコアモジュールで環境構築する方法
- Express Generatorを使用して、環境構築する方法
- Dockerを使用して、環境構築する方法
ここでは、以下バージョンを使用した、Express.jsの環境を構築する方法を説明します。
Express.js v4.18.1
nodejs v19.7.0
また、今回作成するコードは全て、GitHubに掲載しています。
※ Express.jsはNode.jsで動作します。Node.jsがインストールされていない場合は、公式ウェブサイトからダウンロードしてインストールしてください。
node.js
コアモジュールを使った環境構築方法
この方法では、Express.js のコアモジュールを Require して使用します。 以下の手順に従って実行してください。
Express.js単体で環境を構築するには、以下の前提条件を満たす必要があります
プロジェクトディレクトリの作成
まず、Express.jsプロジェクトを作成するために新しいディレクトリを作成します。コマンドラインで以下のコマンドを実行してください
mkdir express-core-project
プロジェクトディレクトリへの移動
プロジェクトディレクトリに移動します。以下のコマンドを実行してください:
cd express-core-project
移動後、プロジェクトのルートディレクトリに移動します。
プロジェクトの初期化
次に、作成したディレクトリでプロジェクトを初期
化します。以下のコマンドを実行して、package.json
ファイルを作成します
npm init -y
このコマンドにより、デフォルトの設定でpackage.json
が生成されます。
Express.jsのインストール
Express.jsパッケージをインストールします。以下のコマンドを実行してください
npm install express@4.18.1
これにより、Express.jsがプロジェクトに追加されます。
アプリケーションの作成
Express.jsアプリケーションを作成します。プロジェクトディレクトリ内に新しいファイル(例: app.js
)を作成し、以下のコードを追加してください
app.js
const express = require('express');
const app = express();
app.get('/', (req, res) => {
res.send('Hello, Express.js!');
});
app.listen(3000, () => {
console.log('サーバーがポート3000で起動しました');
});
上記の例では、Express.jsアプリケーションの基本的な構造を示しています。app.get()
メソッドを使用してルートパスに対するハンドラーを定義し、レスポンスとしてHello, Express.js!
を返します。
最終的に以下のようなディレクトリ構造になります。
express-core-project
├── node_modules
│ └── (依存関係のパッケージ)
├── app.js
├── package-lock.json
└── package.json
サーバーの起動
最後に、Express.jsサーバーを起動します。以下のコマンドを実行してください
node app.js
サーバーが正常に起動すると、コンソールに「サーバーがポート3000で起動しました」と表示されます。 ブラウザでhttp://localhost:3000にアクセスして、Express.jsアプリケーションが正常に動作していることを確認してください。
Express Generatorを使った環境構築する方法
Express.jsは、Express Generatorを使用して環境を構築することもできます。 Express Generatorは、Express.jsプロジェクトを簡単に作成するためのコマンドラインツールです。 この記事では、Express Generatorを使用した環境構築手順を詳しく説明します。
Express Generatorのインストール
Express Generatorをグローバルにインストールします。以下のコマンドを実行してください:
npm install -g express-generator
これにより、Express Generatorがシステムにインストールされます。
プロジェクトの作成
Express.jsプロジェクトを作成するために、以下のコマンドを実行してください:
express express-generator-project
上記のコマンドでは、express-generator-project
という名前のプロジェクトディレクトリが作成されます。ディレクトリ名は任意のものに変更できます。
プロジェクトディレクトリへの移動
プロジェクトディレクトリに移動します。以下のコマンドを実行してください:
cd express-generator-project
移動後、プロジェクトのルートディレクトリに移動します。
依存関係のインストール
プロジェクトのルートディレクトリで、依存関係をインストールします。以下のコマンドを実行してください:
npm install
これにより、Express.jsおよび関連するパッケージがプロジェクトに追加されます。 最終的に以下のようなディレクトリ構造になります。
express-generator-project
├── node_modules
│ └── (依存関係のパッケージ)
├── public
│ ├── images
│ ├── javascripts
│ └── stylesheets
│ └── style.css
├── routes
│ ├── index.js
│ └── users.js
├── views
│ ├── error.jade
│ ├── index.jade
│ └── layout.jade
├── app.js
├── package.json
└── package-lock.json
サーバーの起動
Express.jsサーバーを起動します。以下のコマンドを実行してください:
npm start
サーバーが正常に起動すると、コンソールに「サーバーがポート3000で起動しました」と表示されます。 ブラウザでhttp://localhost:3000にアクセスして、Express.jsアプリケーションが正常に動作していることを確認してください。
Express Generatorを使用すると、Express.jsプロジェクトの環境構築が簡単になります。Express Generatorをインストールし、express
コマンドを使用してプロジェクトを作成し、依存関係をインストールするだけで、素早くExpress.jsアプリケーションの開発を始めることができます。
Dockerを使った環境構築する方法
まずはじめに、Dockerをインストールしてください。公式のDockerウェブサイトから、対応するオペレーティングシステムに合わせたDockerのインスト
ーラーをダウンロードし、インストールを行ってください。
プロジェクトディレクトリの作成
まず、Express.jsプロジェクトを作成するために新しいディレクトリを作成します。コマンドラインで以下のコマンドを実行してください
mkdir express-docker-project
プロジェクトディレクトリへの移動
プロジェクトディレクトリに移動します。以下のコマンドを実行してください:
cd express-docker-project
移動後、プロジェクトのルートディレクトリに移動します。
プロジェクトの初期化
Express.jsプロジェクトを初期化するために、以下のコマンドを実行します。
npm init -y
必要なパッケージのインストール
Express.jsとDockerイメージの作成に必要なパッケージをインストールします。
npm install express@4.18.1
Dockerfileの作成
Express.jsアプリケーションをDockerイメージとしてビルドするために、プロジェクトフォルダ内にDockerfile
という名前のファイルを作成し、以下の内容を追加します。
FROM node:19.7.0-alpine
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 3000
CMD ["node", "app.js"]
アプリケーションの作成
Express.jsアプリケーションを作成します。プロジェクトディレクトリ内に新しいファイル(例: app.js
)を作成し、以下のコードを追加してください
Dockerでは、全てのホストから接続が出来るように0.0.0.0でリッスンします。
app.js
const express = require('express');
const app = express();
app.get('/', (req, res) => {
res.send('Hello, Express.js!');
});
app.listen(3000, '0.0.0.0', () => {
console.log('サーバーがポート3000で起動しました');
});
Dockerイメージのビルド
以下のコマンドを使用して、Dockerイメージをビルドします。
docker build -t express-docker-project .
Dockerコンテナの実行
ビルドしたDockerイメージからDockerコンテナを実行します。
docker run -p 3000:3000 -d express-docker-project
これにより、Express.jsアプリケーションがDockerコンテナ内で実行され、ホストのポート3000にマッピングされます。ブラウザやAPIテストツールなどから http://localhost:3000 にアクセスすることでExpress.jsアプリケーションにアクセスできます。
以上が、Dockerを使用してExpress.jsアプリケーションを環境構築する手順です。Dockerを活用することで、環境構築の手間を減らし、開発プロセスをスムーズにすることができます。
注意: ホストのファイアウォールやネットワーク設定によっては、ポート3000へのアクセスが制限されている場合があります。必要に応じて、ファイアウォールやネットワーク設定を調整してください。