nodemonで自動再起動【開発時の手間削減】

nodemonは、コード変更を監視して、自動でNode.jsのアプリケーションを再起動してくれるツールです。開発時に役立ちます。ここでは、nodemonの使い方について確認します。

インストール

開発環境のみ利用するので --save-dev をつけてます。

npm install --save-dev nodemon

nodemonで起動

npm start で起動できるように、package.jsonscripts を設定します。

  "scripts": {
    "start": "nodemon src/app.js"
  },

npm start を実行します。

$ npm start

> express-api@1.0.0 start /sample/express-api
> nodemon src/app.js

[nodemon] 1.19.1
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: *.*
[nodemon] starting `node src/app.js`
Example app listening on port 5000!

nodemon経由で src/app.js が起動されました。

src/app.js を編集すると以下のように再起動されます。

[nodemon] restarting due to changes...
[nodemon] starting `node src/app.js`
Example app listening on port 5000!

設定ファイル
( nodemon.json )

TypeScriptのホットリロードをしたい場合、nodemonの起動で ts-node を起動するように設定します。

nodemonの設定は、 nodemon.json というファイルに記述します。以下、nodemon.json の記述例です。

{
  "watch": ["src"],                 // 監視対象フォルダ
  "ext": "ts",                      // 監視対象拡張子
  "ignore": ["src/**/*.spec.ts"],   // 監視対象外
  "exec": "ts-node ./src/app.ts"  // nodemon起動時の実行スクリプト
}

参考

参考