forever でGulpスクリプトを実行することは可能ですか?
デーモンとして実行したいGulpスクリプトがあるので、開始/停止/一覧表示できます。
さて、/ usr/binからローカルフォルダーにgulpバイナリをリンクし、コマンドをローカルで実行することで解決しました。そのようです:
ln -s /usr/bin/gulp ./gulp
forever start gulp serve
コマンドはあなたによって異なるかもしれませんが、私はあなたがそれの要点を理解することを望みます。
ノードプロジェクトにgulp
をインストールすると、次のように実行できます。
forever start node_modules/gulp/bin/gulp.js [YOUR GULP TASK]
あなたにプログラム的な答えを与えるために:
基礎となる forever-monitor を使用します。これには、forever
CLIパッケージが使用するコア機能が含まれています。
var forever = require('forever-monitor');
gulp.task('server', function () {
new forever.Monitor('path/to/server-script.js').start();
});
このようなタスクは複数実行できます。gulpタスクはタスクを同時に実行する内部でオーケストレーターを使用するため、特別なデーモンオプションを使用する必要はありません。
コンソールでCMD + Cを使用することがタスクを停止するのに適していない場合は、それを変数に入れることができます。
var child = new forever.Monitor('path/to/server-script.js');
child.on('event', cb) / child.start() / child.stop()
インストールpm2
$ npm install pm2 -g
gulp
を開始します
pm2 start gulp serve
pm2 l
を使用して実行中のサービスを表示できます。注:指定したポートの横で実行中のサービスが表示される場合があります。例: http:// localhost:3001 ではなく http :// localhost:30
これを試して:
forever start -c "gulp" serve
-c
オプションを使用すると、任意のコマンドを使用できます。