Deuxième billet de blog de notre série consa­crée aux nou­veaux lan­gages, cette fois dédié à Lua. Si la popu­la­ri­té de ce lan­gage dans le monde web reste modeste (com­pa­ré à des poids lourds comme Python ou Node.js), nous vou­lons jus­te­ment vous mon­trer qu’il est pos­sible d’héberger des sites dans des tech­no­lo­gies très variées.

Lua 5.1 à 5.3

Nous avions expli­qué dans notre pré­cé­dent billet que Node.js deve­nait le qua­trième lan­gage majeur sup­por­té chez always­da­ta. Lua, de par sa noto­rié­té moindre (pour le moment), n’a pas encore ce sta­tut. Cela ne change tou­te­fois pas grand chose :

  • Les ver­sions 5.1, 5.2 et 5.3 sont ins­tal­lées, vous pou­vez uti­li­ser la ver­sion de votre choix en uti­li­sant la com­mande lua5.X, par exemple lua5.1. La com­mande lua démarre la ver­sion 5.2 à l’heure actuelle, mais cela pour­rait chan­ger à l’avenir, il est donc pré­fé­rable de spé­ci­fier la ver­sion dési­rée ;
  • Luarocks (pour ins­tal­ler des paquets) et LuaJIT sont éga­le­ment pré­ins­tal­lés.

Exemple : déployer une application Sailor

Voyons com­ment déployer une appli­ca­tion web avec Lua en uti­li­sant le fra­me­work Sailor. Installons tout d’abord Sailor en SSH puis créons notre appli­ca­tion :


Nous édi­tons le fichier start-server.lua de manière à modi­fier la ligne :


par :


Enfin, dans l’administration always­da­ta, créons un site de type Programme uti­li­sa­teur, en indi­quant :

  • com­mande : lua5.1 ~/hello/start-server.lua
  • réper­toire de tra­vail : hel­lo
  • envi­ron­ne­ment : indi­quez ce que vous ren­voie, en SSH, la com­mande : echo $(env | grep ^LUA_)

Et voi­là, nous accé­dons désor­mais à notre appli­ca­tion par le web.

Le troi­sième billet de notre série s’attardera sur un lan­gage com­pi­lé, pour une fois : Go !