Pregunta

Configuración de la NGP como el usuario root es straighforward y workds. A menos que usted tiene que ejecutar comandos de NGP como raíz (no recomendado). Así que pensé que iba a tratar su puesta en marcha como usuario no root.

De acuerdo con la documentación de la NPM, un usuario no root sin acceso root puede configurar NPM por:

  1. crear un archivo con .npmrc root, binroot, y señalando manroot a las carpetas que el usuario es dueño.
  2. A continuación, se ejecuta el script de instalación.

OK. Instalar estaba bien.

Pero nodo no puede ver los paquetes proporcionados por la NGP.

Así como creo nodo consciente de los paquetes proporcionados por la NGP? (Yo no tenía que hacer nada cuando he instalado previamente NPM como root). Puedo establecer require.paths dentro del nodo, o establecer la variable de entorno NODE_PATH, pero a qué?

Gracias.

¿Fue útil?

Solución

A través de una pequeña exploración, parece que hacer lo siguiente:

  1. configurar su NODE_PATH a lo NPM del directorio raíz es, o
  2. mientras que en nodo, invoke require.paths.push('path_to_npm_root')

Otros consejos

Esto funcionó para mí:

  1. Hacer una ~/.node carpeta

    mkdir ~/.node
    
  2. Editar ~/.npmrc y agregue la línea

    prefix = ~/.node
    
  3. Editar su ~/.profile o ~/.bash_profile y añadir estas líneas

    PATH="$HOME/.node/bin:$PATH"
    NODE_PATH="$HOME/.node/lib/node_modules:$NODE_PATH"
    

Ahora puedo hacer cosas como npm -g install http-server y se instalará a ~/.node sin raíz. Con esto en su lugar, a continuación, cuando escribo http-server, que se ejecuta.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top