2014-11-06 3 views
7

Я использую angular-fullstack для моего приложения. Я хочу запускать свои приложения, используя pm2.Как развернуть с PM2 и Grunt

Угловой-полноэкранный режим начинается с grunt serve:dist, он выполняет несколько задач, включая настройку переменных окружения.
PM2, похоже, запускает приложение с файлом js. как pm2 start server.js

Мой вопрос:
Как использовать PM2 для запуска моего приложения в режиме производства с помощью Grunt?

Я знаю, что мой основной файл приложения - server/app.js, но я не могу просто сделать pm2 start server/app.js, потому что эти переменные среды настроены неправильно.

+0

Пожалуйста, посмотрите на мой ответ ** [здесь] (http://stackoverflow.com/questions/25007130/how-to-use-grunt-gulp-pm-pm2? rq = 1) ** – soyuka

+1

Привет, сойка, я заметил ваш ответ там. но: 1. Я не выполнял node_modules. 2. Я не могу найти скрипт ввода для ворчания. этот скрипт, похоже, не работает: 'node ./node_modules/grunt/lib/grunt.js serve'. Спасибо вам за помощь! – Wint

ответ

6

Я, наконец, получил pm2 работать с ворчанием. просто используйте /usr/bin/grunt как стартовый скрипт, а pm2 хорошо работает, аргумент передается секцией args.
Вот мой config.json файл конфигурации. (Я использую PM2 развернуть)

{ 
    "apps" : [{ 
    "name"  : "myapp", 
    "script" : "/usr/bin/grunt", 
    "args"  : "['serve:dist']" 
    }], 
    "deploy" : { 
    "production" : { 
     "user" : "user-name", 
     "host" : "server-address", 
     "ref" : "origin/develop", 
     "repo" : "git-url", 
     "path" : "/opt/deploy", 
     "post-deploy" : "npm install && bower install && pm2 startOrRestart ecosystem.json --env production" 
    } 
    } 
} 
+0

У меня такая же проблема, как у вас. Я использую '' 'grunt server''' для запуска своего приложения .. и я хочу, чтобы pm2 контролировал' '' grunt server''', который я сделал .. мог вы поможете мне в том, как его достичь? или мне нужно использовать тот же ответ, который вы даете? –

10

Альтернативой является запуск пехотинца непосредственно с помощью PM2:

cd /path/to/fullstack 
pm2 start grunt --name website -- serve 
+0

Отлично, он работает! – oshingc