Nous avons le plaisir de vous annoncer que nous avons ajouté NixOS 21.11 comme nouvelle image supportée par notre produit GandiCloud VPS. Vous pouvez désormais déployer un nouveau serveur GandiCloud avec NixOS!

Qu’est-ce que NixOS ?

NixOS est une distribution Linux construite à partir du gestionnaire de packages Nix. NixOS utilise une configuration déclarative et permet des mises à jour fiables du système.

Un serveur NixOS peut être démarré en quelques clics sur notre interface web ou en utilisant la commande OpenStack CLI:

openstack server nixos-server --image NixOS \
    --flavor V-R2 \
    --boot-from-volume 20
 
screen_FR_NixOS
NixOS 21.11 rejoint Arch Linux, Debian et Ubuntu parmi les images supportées par GandiCloud VPS.


Envie d’essayer NixOS ?

Voici un exemple de démarrage d’un serveur NixOS sur GandiCloud VPS.

Créez un serveur GandiCloud NixOS, connectez-vous en SSH et copiez le fichier /etc/gandi/configuration.nix dans /etc/nixos/gandicloud.nix:

cp /etc/gandi/configuration.nix /etc/nixos/gandicloud.nix

Vous pouvez maintenant éditer le fichier  /etc/nixos/configuration.nix selon vos besoins spécifiques. Par exemple, ajoutons une configuration Nginx pour servir une simple page web.

Le fichier /etc/nixos/configuration.nix devrait maintenant ressembler à ceci : 

 { pkgs, ... }: {
   imports = [ ./gandicloud.nix ];
   config = {
     services.nginx = {
       enable = true;
       virtualHosts = {
         "nixos.gandi.net" = {
           locations."/".root = pkgs.runCommand "web-root" {} ''
             mkdir $out
             echo 'NixOS @ gandi.net \o/' > $out/index.html
           '';
         };
       };
     };
     networking.firewall.allowedTCPPorts = [ 80 ];
   };
 }

Cette configuration de serveur peut ensuite être déployée en utilisant l’outil nixos-rebuild

$ nixos-rebuild switch
building Nix...
activating the configuration...
reloading the following units: dbus.service, firewall.service
the following new units were started: nginx.service

La configuration du serveur a bien été activée et Nginx sert notre page statique :  

$ curl YOUR-GANDICLOUD-SERVER
NixOS @ gandi.net \o/

Ceci n’est qu’un exemple de base et de nombreux outils de déploiement existent pour déployer efficacement des serveurs NixOS. De plus, grâce à l’API publique OpenStack, il est également possible d’utiliser Terraform pour créer un serveur NixOS  et le configurer sur GandiCloud

Merci à la communauté NixOS et bon déploiement de serveurs déclaratifs !

Cet article est placé sous licence Creative Commons Attribution 4.0 International.