Я разрабатываю приложение node.js для машинописного текста и хочу развернуть приложение на сервере с pm2 deploy
.
У меня нет доступа sudo на сервере, поэтому я не могу просто установить глобальные пакеты npm.
Согласно документации npm я изменил каталог по умолчанию для моего npm на ~/.npm-global
и глобально установил машинописный текст с помощью npm i -g typescript
.
Мой раздел развертывания ecosystem.config.js выглядит следующим образом:
deploy: {
production: {
'user': "user",
'host': "example.com",
'repo': "https://github.com/username/repo.git",
'path': "/home/projects/project/",
'post-deploy': "npm install && tsc && pm2 reload ecosystem.config.js --env production"
}
}
Когда я запускаю tsc
на сервере через ssh, он работает, но когда я запускаю pm2 deploy production update
, он говорит:
bash: tsc: command not found
post-deploy hook failed
Я также пробовал NVM, он не 'тоже не работает.