Как использовать pm2 в grunt с настройкой mean.js?

Я использовал генератор йо, чтобы установить скелетную программу js со сборкой grunt для минификации и развертывания.

Какие шаги необходимо предпринять для развертывания с помощью pm2?

Прямо сейчас я использую nodemon, чтобы поддерживать мое приложение в рабочем состоянии, и я использую поток консоли digitalocean для запуска следующей команды:

NODE_ENV=production PORT:80 grunt --force

Согласно моему gruntfile, это делает следующее:

    concurrent: {
        default: ['nodemon', 'watch'],
        options: {
            logConcurrentOutput: true
        }
    },

....

nodemon: {
            dev: {
                script: 'server.js',
                options: {
                    //nodeArgs: ['--debug'],
                    ext: 'js,html',
                    watch: watchFiles.serverViews.concat(watchFiles.serverJS)
                }
            }
        },

grunt.registerTask('default', ['sass','lint', 'concurrent:default']);

Какую конфигурацию я должен добавить/изменить в моем файле grunt, чтобы все это работало с pm2? (Мне это нужно для кластеризации и балансировки нагрузки моего приложения).


person totothegreat    schedule 05.09.2015    source источник
comment
возможный дубликат stackoverflow.com/questions /25007130/   -  person Robbie    schedule 05.09.2015
comment
Мне до сих пор непонятно, как и что настроить в моем gruntfile, чтобы это работало.   -  person totothegreat    schedule 06.09.2015
comment
Я думаю, что лучшим подходом было бы собрать версию вашего ПО для производства, а затем запустить в pm2 собранную версию app.js.   -  person morels    schedule 22.02.2017


Ответы (1)


В командной строке выполните:

$ export NODE_ENV=production

настроит производство экологического

$ grunt build

создаст необходимые .min.js и min.css

$ pm2 start server.js

загрузит сервер с помощью pm2, который является пакетом, который гарантирует, что сервер узла перезапустится в случае ошибки и будет зарегистрирован.

person Prem Sanil    schedule 06.03.2018