Node Foremanで複数のプロセスを同時に起動する

  • このエントリーをはてなブックマークに追加

Rubyで開発している時に開発環境で複数のプロセスをまとめて起動させたいときにforeman
利用することが多いですがNode.jsの実装でNode Foremanがあります。

www.npmjs.com

npmコマンドでNode Foremanをインストールします。

$ npm install -g foreman

コマンド自体は nf となります。

$ nf
_____
|   __|___ ___ ___ _____ ___ ___
|   __| . |  _| -_|     |   |   |
|__|  |___|_| |___|_|_|_|_^_|_|_|
Usage: nf [options] [command]
Commands:
start [options]        Start the jobs in the Procfile
run [options]          Run a one off process using the ENV variables
export [options]       Export to an upstart job independent of foreman
Options:
-h, --help             output usage information
-V, --version          output the version number
-j, --procfile <FILE>  load procfile FILE
-e, --env      <FILE>  use FILE to load environment
-p, --port     <PORT>  start indexing ports at number PORT

では、実際に複数のプロセスをNode foremanで起動してみます。

Procfile自体はRubyのforemanと同じなので準備します。ひとまず開発用ということで Procfile.development というファイル名で以下の様な内容を準備します。

サンプルとして先日作成したloopbackアプリ + MongoDBを動かしてみます。

web: node .
mongo: mongod --dbpath=./db

上記の様なProcfileを用意したらNode Foremanを起動します。

$ nf start -j Procfile.development

上記のコマンドでForemanを起動すると、複数プロセス(loopbackアプリとMongoDB)が起動します。

Node.jsのアプリでforemanを使いたいとき、npmの範囲でカバーできるので便利ですね。

(Visited 559 times, 1 visits today)
  • このエントリーをはてなブックマークに追加

SNSでもご購読できます。

コメントを残す

*