Я пытаюсь запустить Docusaurus на Windows Server 2016 с Node.js версией 12.14.0 через PM2 на IIS10. Я использую PM2, поэтому я могу перезапустить приложения после перезагрузки сервера. Теперь я должен признать, что сегодня я впервые пытался сделать что-то с Node.js, поэтому, пожалуйста, потерпите меня.
Обычно запускается , вызывая npm run start
в Справочник Docusaurus. При тестировании Node.js и запуске приложения «Hello World» при перезагрузке сервера я использовал ecosystem.config.js
, как это предлагается в документации PM2. Это называется javascript файл, подобный так.
module.exports = {
apps: [
{
name: "HelloWorld",
script: "apps\\hello_world.js",
instances: 1
}
]
}
Это работало нормально, но я не смог найти никакой документации о том, как запустить npm start
из этого файла (хотя я пытался вызвать отдельный пакет файл, который тоже не работал). Затем я увидел здесь , что я могу вызвать файл JSON, в котором задокументированы дополнительные параметры.
JSON файл конфигурации:
{
"apps": [
{
"name": "docs",
"cwd": "apps\\docs",
"script": "npm",
"args": "start"
},
{
"name": "HelloWorld",
"script": "apps\\hello_world.js"
}
]
}
Сценарий «HelloWorld» запускается, но не приложение docs. Отчет
pm2 предлагает следующий вывод:
PM2 | 2020-01-07T17:54:20: PM2 log: App [docs:0] exited with code [1] via signal [SIGINT]
PM2 | 2020-01-07T17:54:20: PM2 log: App [docs:0] starting in -fork mode-
PM2 | 2020-01-07T17:54:20: PM2 log: App [docs:0] online
PM2 | 2020-01-07T17:54:21: PM2 log: App [docs:0] exited with code [1] via signal [SIGINT]
PM2 | 2020-01-07T17:54:21: PM2 log: App [docs:0] starting in -fork mode-
PM2 | 2020-01-07T17:54:21: PM2 log: App [docs:0] online
PM2 | 2020-01-07T17:54:21: PM2 log: App [docs:0] exited with code [1] via signal [SIGINT]
PM2 | 2020-01-07T17:54:21: PM2 log: App [docs:0] starting in -fork mode-
PM2 | 2020-01-07T17:54:21: PM2 log: App [docs:0] online
PM2 | 2020-01-07T17:54:21: PM2 log: App [docs:0] exited with code [1] via signal [SIGINT]
PM2 | 2020-01-07T17:54:21: PM2 log: App [docs:0] starting in -fork mode-
PM2 | 2020-01-07T17:54:21: PM2 log: App [docs:0] online
PM2 | 2020-01-07T17:54:22: PM2 log: App [docs:0] exited with code [1] via signal [SIGINT]
PM2 | 2020-01-07T17:54:22: PM2 log: App [docs:0] starting in -fork mode-
PM2 | 2020-01-07T17:54:22: PM2 log: App [docs:0] online
PM2 | 2020-01-07T17:54:22: PM2 log: App [docs:0] exited with code [1] via signal [SIGINT]
PM2 | 2020-01-07T17:54:22: PM2 log: App [docs:0] starting in -fork mode-
PM2 | 2020-01-07T17:54:22: PM2 log: App [docs:0] online
PM2 | 2020-01-07T17:54:22: PM2 log: App [docs:0] exited with code [1] via signal [SIGINT]
PM2 | 2020-01-07T17:54:22: PM2 log: Script C:\PROGRAM FILES\NODEJS\NPM.CMD had too many unstable restarts (16). Stopped. "errored"
, который привел меня к этой проблеме на GitHub. Похоже, что по этим вопросам не наблюдается большой активности, и были исторические 1062 * случаи этого тоже.
Я думаю, что может быть что-то не так с PM2, или есть проблема с этим, потому что я не могу запустить документы через командную строку с PM2.
C:\Node JS\apps\docs>pm2 start npm --name "docs" -- start
Кто-нибудь есть какие-либо идеи о том, как я могу заставить это работать или пытался сделать что-то подобное? Я бы согласился на ответ:
- Альтернативный способ запуска Docusaurus на Windows Сервер.
- Альтернатива использованию PM2.
- Любые другие идеи .
Извинения, если я прошёл.
РЕДАКТИРОВАТЬ:
Выход pm2 start ecosystem.json --only docs
C:\Node JS>pm2 start ecosystem.json --only docs
[PM2][WARN] Applications docs not running, starting...
[PM2][ERROR] Process failed to launch EPERM: operation not permitted, open 'C:\etc\.pm2\logs\docs-out.log'
Журнал, на который он ссылается, пуст. docs-error.log
повторяет одну и ту же ошибку несколько раз, но не обновлялась с прошлой ночи. Вероятно, он был создан мной, пробуя разные синтаксисы в файле JSON, но в любом случае публикуя его.
SyntaxError: Unexpected token ':'
at Module._compile (internal/modules/cjs/loader.js:895:18)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:995:10)
at Module.load (internal/modules/cjs/loader.js:815:32)
at Function.Module._load (internal/modules/cjs/loader.js:727:14)
at Object.<anonymous> (C:\Users\user\AppData\Roaming\npm\node_modules\pm2\lib\ProcessContainerFork.js:27:21)
at Module._compile (internal/modules/cjs/loader.js:959:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:995:10)
at Module.load (internal/modules/cjs/loader.js:815:32)
at Function.Module._load (internal/modules/cjs/loader.js:727:14)
at Function.Module.runMain (internal/modules/cjs/loader.js:1047:10)
C:\PROGRAM FILES\NODEJS\NPM.CMD:1
:: Created by npm, please don't edit manually.