J'essaie d'exécuter certaines tâches de pré-déploiement (tests unitaires, etc.) avec NPM sur un site Web Azure, cependant la version du nœud sur le VM est v0.10.32, la version actuelle du nœud est v4.2.4.
J'ai un accès non administratif à la ligne de commande via le site Web SCM, pas de RDP, etc.
Existe-t-il un moyen de mettre à niveau?
Vous pouvez spécifier la version du nœud sur laquelle l'application s'exécute à l'aide du fichier package.json. Ajouter:
"engines":{"node":version}
par exemple.:
"engines":{"node": "0.12.x"},
Plus d'informations: https://Azure.Microsoft.com/en-us/documentation/articles/nodejs-specify-node-version-Azure-apps/
Assurez-vous que Azure Web App possède la version de nœud que vous souhaitez.
D:\Program Files (x86)\nodejs
dir
pour voir les versions de nodejs disponibles.Par exemple, s'il existe un répertoire nommé 6.3.0
, alors vous pouvez l'utiliser.
// App Setting
WEBSITE_NODE_DEFAULT_VERSION 6.3.0
// package.json
engines":{"node": "6.3.0"}
Mise à jour 2017. Tout ce qui précède n'a pas fonctionné pour moi.
J'ai changé:
// package.json
engines":{"node": "8.0.0"}
puis j'ai ajouté la valeur des paramètres de l'application
<appSettings>
<add key="WEBSITE_NODE_DEFAULT_VERSION" value="8.0.0" />
</appSettings>
J'ai redémarré une application des millions de fois, et la solution était de changer iisnode.yml
nodeProcessCommandLine: "D:\Program Files (x86)\nodejs\8.0.0\node.exe"
C'est tout. J'espère que cela aidera quelqu'un.
Juste pour clarifier les choses: je parle d'App Service
Et si vous vous connectez à votre application, vous verrez iisnode.yml ici:
Modification de la version de NodeJs dans Azure Portal
Accédez à votre application Web dans le portail Azure Cliquez sur Paramètres d'application dans le panneau Paramètres. Vous pouvez inclure WEBSITE_NODE_DEFAULT_VERSION comme clé et version de nodejs que vous souhaitez comme valeur dans les paramètres de l'application.
Exemple: WEBSITE_NODE_DEFAULT_VERSION 8.0.0