Запустить рабочий сервер Java и приложение узла в фоновом режиме?

#java #node.js #nginx #executable-jar

#java #node.js #nginx #исполняемый файл-jar

Вопрос:

У меня есть это сложное веб-приложение, в котором Nginx запущен спереди для пересылки запросов на сервер узла, а сервер узла использует приложение Java .jar. Я хочу запустить все это в производственной среде. Nginx не проблема, поскольку он выполняется как обычный процесс. Как мне запустить приложение узла в фоновом режиме, чтобы оно выдержало перезапуск, а также приложение Java (включает дополнительные параметры, которые необходимо задать в обеих командах запуска приложения).

Это машина Ubuntu Digitalocean. Вот пример команд запуска-

sudo java -jar -Dapplication.secret=секрет -Dapplication.publicurl=https://104.329.374.846:8888 / приложение.jar

узел sudo server.js localhost: 8888 secret

Каким будет способ запуска обоих приложений таким образом, чтобы, когда приложение выдаст ошибку и остановится (это не обязательно) или Ubuntu перезагрузится, оба эти приложения автоматически перезапустятся при перезагрузке с параметрами, заданными автоматически в командах.

  • Элемент списка

Комментарии:

1. Выполните это для Jar и это для node.js приложение.

2. @AnuragDwivedi Я использовал это в файле app.service ExecStart, но не работает- ExecStart=/bin/bash -c «/usr/bin/node /var/www/video.domain.com/openvidu-tutorials/openvidu-mvc-node/server.js localhost:4443 educake2019» Как я могу заставить это работать? Нет инструкции о том, как добавить эти последние параметры в команду. Я использовал это так, но не работает. Что я делаю не так? Пробовал создать скрипт bash, но тупик.

Ответ №1:

Для приложения NodeJS у вас также есть опция pm2, которая проста в использовании.

Комментарии:

1. Существует ли какой-либо пакет, подобный pm2, для приложений Java .jar?

2. @RPCMURPHY, я не знаю ни одного. Я запускаю свои Java-программы на сервере так же, как Anurang предложил выше.