Est-il possible d'exécuter le script Gulp avec forever ?
J'ai un script Gulp qui voudrait être exécuté en tant que démon, je pourrais donc le démarrer/l'arrêter/le lister.
D'accord, j'ai donc résolu le problème en liant le binaire gulp de/usr/bin à mon dossier local, puis en exécutant simplement la commande localement. Ainsi:
ln -s /usr/bin/gulp ./gulp
forever start gulp serve
Les commandes peuvent varier pour vous, mais j'espère que vous en aurez l'essentiel.
si vous installez gulp
dans votre projet de noeud, vous pouvez procéder comme suit:
forever start node_modules/gulp/bin/gulp.js [YOUR GULP TASK]
Pour vous donner une réponse programmatique:
Vous utilisez le sous-jacent forever-monitor qui contient la fonctionnalité principale utilisée par le package CLI forever
.
var forever = require('forever-monitor');
gulp.task('server', function () {
new forever.Monitor('path/to/server-script.js').start();
});
Vous pouvez exécuter plusieurs tâches de ce type. Il n'est pas nécessaire d'utiliser des options de démon spéciales, car les tâches gulp utilisent orchestrator sous le capot qui les exécute simultanément.
Si l'utilisation de CMD + C dans la console ne convient pas pour arrêter vos tâches, vous pouvez le mettre dans une variable:
var child = new forever.Monitor('path/to/server-script.js');
child.on('event', cb) / child.start() / child.stop()
Installer pm2
$ npm install pm2 -g
Maintenant, commencez gulp
pm2 start gulp serve
Vous pouvez afficher les services en cours d'exécution à l'aide de pm2 l
et Remarque: vous pouvez parfois voir vos services s'exécuter à côté du port que vous avez spécifié, par exemple: http: // localhost: 3001 au lieu de http: // localhost : 3000
Essaye ça:
forever start -c "gulp" serve
L'option -c
vous permet d'utiliser n'importe quelle commande.