2016-06-21 1 views
0

J'utilise jailkit sur mon serveur, et je veux ajouter le support de nodejs et de npm dans l'environnement chrooté. Je ne sais pas s'il me manque un répertoire que j'ai besoin de lier dans ma prison, ou un peu de lib ou de binaire, mais je suis complètement perdu. J'ai ajouté ce qui suit à jk_init.ini:Configurer nodejs et npm dans Jailkit

[node] 
comment = NodeJS 
executables = /usr/bin/npm, /usr/bin/node, /usr/bin/nodejs 
directories = /usr/local/lib/node_modules 

Si je lance npm ls de mon utilisateur root, il fonctionne très bien. Si je tente de l'exécuter de mon environnement emprisonné, je reçois cette erreur:

npm ERR! Linux 3.16.0-28-generic 
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "ls" 
npm ERR! node v4.2.6 
npm ERR! npm v3.5.2 
npm ERR! code MODULE_NOT_FOUND 

npm ERR! Cannot find module 'ansi' 
npm ERR! 
npm ERR! If you need help, you may report this error at: 
npm ERR!  <https://github.com/npm/npm/issues> 

npm ERR! Please include the following file with any support request: 
npm ERR!  /web/npm-debug.log 

Les fichiers journaux a ceci:

0 info it worked if it ends with ok 
1 verbose cli [ '/usr/bin/nodejs', '/usr/bin/npm', 'ls' ] 
2 info using [email protected] 
3 info using [email protected] 
4 verbose stack Error: Cannot find module 'ansi' 
4 verbose stack  at Function.Module._resolveFilename (module.js:326:15) 
4 verbose stack  at Function.Module._load (module.js:277:25) 
4 verbose stack  at Module.require (module.js:354:17) 
4 verbose stack  at require (internal/module.js:12:17) 
4 verbose stack  at Object.<anonymous> (/usr/share/npm/lib/ls.js:15:13) 
4 verbose stack  at Module._compile (module.js:410:26) 
4 verbose stack  at Object.Module._extensions..js (module.js:417:10) 
4 verbose stack  at Module.load (module.js:344:32) 
4 verbose stack  at Function.Module._load (module.js:301:12) 
4 verbose stack  at Module.require (module.js:354:17) 
5 verbose cwd /web 
6 error Linux 3.16.0-28-generic 
7 error argv "/usr/bin/nodejs" "/usr/bin/npm" "ls" 
8 error node v4.2.6 
9 error npm v3.5.2 
10 error code MODULE_NOT_FOUND 
11 error Cannot find module 'ansi' 
12 error If you need help, you may report this error at: 
12 error  <https://github.com/npm/npm/issues> 
13 verbose exit [ 1, true ] 

J'exécute la dernière version d'Ubuntu avec ISPConfig

+1

Je suis en cours d'exécution aussi dans le même problème, mais pour moi, c'est 'ne peut pas trouver le module npmlog'. Avez-vous trouvé un moyen de le résoudre? – gabtzi

Répondre

1

eu le problème aujourd'hui encore, fixé en changeant

directories = /usr/local/lib/node_modules 

à

directories = /usr/lib/node_modules 

Debian Jessie, également sur ISPConfig.

Remeber pour déclencher

jk_init -c /etc/jailkit/jk_init.ini -f -k -j /var/www/clients/clientX/web62 node