Pour updater node

Utiliser n

https://stackoverflow.com/questions/8191459/how-do-i-update-node-js#19584407

Update : use nvm instead

https://stackoverflow.com/questions/8191459/how-do-i-update-node-js#19584407

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash

command -v nvm

nvm install node # then exit and restart terminal

Erreur lors d’un npm install

Problème de denied access sur un dossier, par exemple.

npm --force install # permet souvent de régler le problème.

Sinon, il faut sûrement updater node et npm

Déployer une app node

w/ pm2

PM2 helps running a node app. It restarts automatically when crashing.

First start an app with

pm2 start app.js --name "helloworld" --watch

then, for list started apps

pm2 list
┌──────────┬────┬─────────┬──────┬───────┬─────────┬─────────┬────────┬─────┬────────┬─────────────┬──────────┐
│ App name │ id │ version │ mode │ pid   │ status  │ restart │ uptime │ cpu │ mem    │ user        │ watching │
├──────────┼────┼─────────┼──────┼───────┼─────────┼─────────┼────────┼─────┼────────┼─────────────┼──────────┤
│ buxid    │ 0  │ N/A     │ fork │ 13550 │ stopped │ 8       │ 0      │ 0%  │ 0 B    │ patjennings │ enabled  │
└──────────┴────┴─────────┴──────┴───────┴─────────┴─────────┴────────┴─────┴────────┴─────────────┴──────────┘

Attention, problème avec pm2 et les fichiers statiques de node (app.use(express.static(“folder”))) Il faut bien cd vers le répertoire de travail avant de lancer l’app avec pm2 (pourquoi ? En tout cas, ça fonctionne quand je le fais). Si on le lance d’autre part (et même en faisant pm2 /absolute/path/to/app.js), node s’y perd et ne peut pas servir les fichiers statiques https://github.com/Unitech/pm2/issues/1698#issuecomment-237214097

Pour suivre la résolution du problème abordé ci-dessus, voici le script qui me permet de lancer une app node (noter le cd avant de démarrer, et le NODE_ENV)

cd /var/www/tyto.thomasguesnon.net && NODE_ENV=production pm2 start server/app.js --name "tyto" --watch