#node.js #forever #shipitjs
#node.js #навсегда #shipitjs
Вопрос:
Моя конечная цель — автоматизировать мою разработку с помощью Shipit. Я могу правильно перенести код на сервер, но я не могу заставить команду NODE_ENV=production forever start -c 'npm run serve'
выполняться должным образом. Когда я попытался запустить его локально на своем сервере, я получил такой ответ (вывод справки). Мне нужно запустить, npm serve
потому что он выполняет следующее: "serve": "gulp build amp;amp; npm-run-all --parallel gulp-watch jekyll-serve"
. Мой проект является форком Tabler.
root@server:/var/www/server# cd /var/www/server/current/front-end/ amp;amp; NODE_ENV=production forever start -c 'npm run serve'
help: usage: forever [action] [options] SCRIPT [script-options]
help:
help: Monitors the script specified in the current process or as a daemon
help:
help: actions:
...
...
Ответ №1:
Вы можете использовать другой вариант, если это навсегда не работает, для того, чтобы ваш файл сценария всегда работал в фоновом режиме, вы можете использовать
PM2 npm
обратитесь к этому https://www.npmjs.com/package/pm2
ИЛИ второй вариант заключается в том, что вы можете использовать
tmux
вы можете использовать это, и это позволяет запускать службу npm так же, как вы запускаете в локальной системе, предоставляя вам ссылку ниже
https://www.digitalocean.com/community/tutorials/how-to-install-and-use-tmux-on-ubuntu-12-10—2
Комментарии:
1. Я пробовал это, но не смог заставить команду
npm run serve
работать. Есть предложения относительно того, как я могу этого добиться?2. @user82395214 Привет, я внес изменения, и я предоставил решение и ссылку, на которую вы можете сослаться, я гарантирую, что это сработает, потому что я также использую это для запуска
npm run serve
Ответ №2:
Вам нужно указать абсолютный путь к папке, которую вы хотите обслуживать, а также использовать which
для получения абсолютного пути команды.
Я использую npx для запуска serve вместо того, чтобы устанавливать его, и это работает следующим образом:
forever start $(which npx) serve -l 80 -s /home/user/folder/build/
Комментарии:
1. Я сделал это… Теперь остановка forever не остановит это!