#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 предложил выше.