NVM & Node.js-installation recommandée pour tous les utilisateurs
est-ce qu'il y a une installation recommandée pour nvm afin que tous les utilisateurs puissent l'utiliser? je ne trouve rien sur le web à ce sujet.
c'est ce que j'ai fait
- installé nvm dans un répertoire commun <!--5 nvm.sh script locationin .profil pour tous les utilisateurs
- créé un nvm/répertoire alias (nvm se plaint si ce n'est pas ici pour d'autres utilisateurs)
ensuite, chaque utilisateur doit exécuter "nvm utilisation" ou le mettre dans leur profil par défaut
vous ne savez pas s'il y a un meilleur moyen?
merci
4 réponses
Voici ce que j'ai fait:
Installé
nvm
/opt/nvm
comme root. Semblait être un endroit approprié.# git clone git@github.com:creationix/nvm.git /opt/nvm
Créé le répertoire
/usr/local/nvm
. C'est là que les téléchargements ($NVM_DIR
)# mkdir /usr/local/nvm
Créer le répertoire
/usr/local/node
. C'est là que le mécanisme national de prévention global des trucs ira:# mkdir /usr/local/node
Créé un fichier appelé
nvm.sh
/etc/profile.d
avec le contenu suivant:export NVM_DIR=/usr/local/nvm source /opt/nvm/nvm.sh export NPM_CONFIG_PREFIX=/usr/local/node export PATH="/usr/local/node/bin:$PATH"
se reconnecter à une session shell, puis définir la version du noeud par défaut.
# nvm install 0.10 # nvm alias default 0.10
les binaires des noeuds devraient maintenant être dans le PATH
pour tous les utilisateurs la prochaine fois que vous vous connecter à une session shell. NPM installera global things sur le /usr/local/node
préfixe.
il est préférable d'installer une copie du noeud globalement pour que les autres utilisateurs puissent y accéder. Pour ce faire, lancez la commande suivante (saisissant le mot de passe de votre utilisateur à l'invite):
n=$(which node);n=${n%/bin/node}; chmod -R 755 $n/bin/*; sudo cp -r $n/{bin,lib,share} /usr/local
ce commend copie toute version de node que vous avez active via nvm dans le /usr/local/
répertoire et définissez les autorisations de sorte que tous les utilisateurs puissent y accéder.
pour vérifier qu'il fonctionne, devenir l'utilisateur root et faire une autre commande pour s'assurer que le noeud est maintenant installé /usr/local/bin
:
sudo -s
which node
si jamais vous voulez changer la version de node qui est installé à l'échelle du système, il suffit de faire une autre nvm utiliser vXX.XX.XX pour passer le noeud de votre utilisateur à la version que vous voulez, puis relancer la première commande ci-dessus pour la Copier dans le répertoire système.
sudo -s
- installer nvm:
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.1/install.sh | NVM_DIR=/usr/local/nvm bash
- Installer nœud:
nvm install 7.2.0
- Créé un fichier appelé nvm.sh dans /etc/profile.d avec le contenu suivant:
export NVM_DIR="/usr/local/nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
créer le script dans /etc/profile.d / (nommé nvm.sh par exemple):
#!/bin/bash
NODE_VER=6.2.2
if [ ! -f ~/.nvm/nvm.sh ]; then
# May need to be updated with the latest nvm release
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.32.0/install.sh | bash
fi
source ~/.nvm/nvm.sh
if ! command -v node | grep -q $NODE_VER; then
echo "Node is not installed"
nvm install $NODE_VER
nvm alias default $NODE_VER
fi
pour notre application, nous avions besoin de pm2 partagées entre les utilisateurs:
if ! command -v pm2 &>/dev/null; then
echo "pm2 not installed"
npm install -g pm2
fi
# Share pm2 configuration between users
alias pm2='env HOME=/opt/sora pm2'