Notre annonce du sup­port de nou­veaux lan­gages a sus­ci­té de l’enthousiasme et plu­sieurs clients font déjà tour­ner des appli­ca­tions Node.js. Nous conti­nuons donc sur notre lan­cée avec ce billet qui se concentre, jus­te­ment, sur Node.js.

Un langage majeur

Comme pro­mis la semaine der­nière, nous avons une sur­prise : Node.js devient le qua­trième lan­gage majeur sup­por­té chez always­da­ta, après PHP, Python et Ruby. Qu’est-ce que cela veut dire ?

D’une cer­taine manière, on pour­rait dire que Node.js est sup­por­té depuis long­temps chez always­da­ta : il « suf­fi­sait » de télé­char­ger sur son compte l’interpréteur depuis le site offi­ciel pour faire tour­ner du Node.js. Côté web, il fal­lait tou­te­fois ruser pour faire tour­ner son appli­ca­tion, par exemple en uti­li­sant PHP en reverse proxy. Faisable… mais com­plexe.

Devenir un lan­gage majeur, cela implique :

  • que nous avons pré­ins­tal­lé l’interpréteur, et qu’il est même pos­sible de choi­sir par­mi plu­sieurs ver­sions de l’interpréteur (via le menu Environnement de l’administration always­da­ta). Aujourd’hui, Node.js est dis­po­nible en ver­sions 6.x (6.11.2) et 8.x (8.4.0) ;
  • que de nou­velles ver­sions de l’interpréteur seront ins­tal­lées régu­liè­re­ment, pas uni­que­ment des mises à jour de sécu­ri­té ;
  • qu’il est facile de déployer une appli­ca­tion web dans ce lan­gage ;
  • qu’il est facile d’installer des dépen­dances externes, en uti­li­sant le ges­tion­naire de paquets offi­ciel en SSH. Pour Node.js, c’est npm, qui est éga­le­ment pré­ins­tal­lé.

Nous avons donc rajou­té un nou­veau type de site, Node.js. Il est simi­laire au type Programme uti­li­sa­teur — car les appli­ca­tions Node.js intègrent leur propre ser­veur HTTP et n’ont pas besoin de couche inter­mé­diaire — à une dif­fé­rence près : il est pos­sible de spé­ci­fier une ver­sion de Node.js expli­cite pour ce site. Et donc d’avoir plu­sieurs sites dis­tincts uti­li­sant des ver­sions de Node.js dif­fé­rentes.

Exemple : déployer une application Express

Express est l’un des fra­me­works Node.js les plus connus. Voyons comme héber­ger une appli­ca­tion déve­lop­pée avec.

  • Tout d’abord, nous devons ins­tal­ler Express. Suivons la docu­men­ta­tion offi­cielle, en exé­cu­tant les com­mandes en SSH (et en accep­tant tout par défaut) :

  • Créons ensuite le fichier app.js, tou­jours en sui­vant la docu­men­ta­tion d’Express. On modi­fie légè­re­ment le code pour que l’application écoute sur l’IP et le port qui seront don­nés en variables d’environnement :

  • Enfin, dans l’administration always­da­ta, créons un site de type Node.js, en indi­quant comme com­mande :


Le tour est joué : notre petite appli­ca­tion Express est bien joi­gnable !

Prochain lan­gage au pro­gramme, pour le second billet de notre série : Lua.