[Sy] express-generator を使ってアプリの雛形を作った場合にポートを変える方法(npm-scripts使って簡略化)
2018/01/17
package.json で npm-scripts に設定を追加して、 express-generator で作成したアプリのポートを指定して起動する方法です。
おさらい
前回の記事はこちらです。
⇒ [Sy] express-generator を使ってアプリの雛形を作った場合にポートを変える方法ここまでやったことは、
- nodebrew を使って node と npm をインストール
- express-generator を使って
my-app
を作成 PORT=3333
と起動時に指定することでポートを変更デキることを確認
というところまでです。
今回は、いちいち起動時に PORT=3333
なんて付けるのはめんどくさいので、 npm-scripts( package.json の script のところに記載して実行する) を使って簡単にポートを変えて起動できるようにします。
1. package.json を編集
express-generator が最初に作ってくれている package.json
には、script
の部分がこうなってます。
(package.json)
{
・
・
"scripts": {
"start": "node ./bin/www"
},
・
・
}
ここに start
という設定があるので、 npm start
というコマンドでアプリを起動できていたということになります。
この部分に、以下のように local
という設定を追加します。
(package.json)
{
・
・
"scripts": {
"start": "node ./bin/www",
"local": "DEBUG=my-app:* PORT=3333 node ./bin/www"
},
・
・
}
2. 起動
これで、以下のコマンドでポート 3333 番で簡単に起動できるようになります。
$ npm run local
> my-app@0.0.0 local /Users/utano320/Documents/Develop/my-app
> DEBUG=my-app:* PORT=3333 node ./bin/www
my-app:server Listening on port 3333 +0ms
※ local
など自分で追加したものは、 npm run local
のように npm run
の後に指定する必要があるので注意してください。(start
, stop
, test
は run
なしで使えるようになっています)