Alternative à Vagrant

Top Page

Reply to this message
Author: Edgar Bonet
Date:  
To: Liste Guilde
Subject: Alternative à Vagrant
Bonjour la Guilde !

Je viens voir si il y en a parmi vous qui ont de l'expérience à partager
sur l'utilisation de machines virtuelles en ligne de commande.

Pour le contexte... Au boulot, je participe au développement d'un soft
de simulation numérique[1]. Je teste régulièrement son installation et
son fonctionnement sur Ubuntu, Debian et Rocky Linux. Pour ce faire, je
trouve Vagrant[2] super-pratique : une fois renseigné un Vagrantfile[3],
je peux faire par exemple:

    vagrant up debian_bookworm
    vagrant ssh debian_bookworm


et me voilà dans une machine Debian bookworm !

Le problème, c'est qu'en août dernier, Vagrant, qui était un logiciel
libre, est passé à une licence non-libre[4]. Dans la foulée, Canonical a
décidé de ne plus distribuer des images Vagrant d'Ubuntu[5]. Les
développeurs Debian vont probablement faire de même[6]. Dans l'immédiat,
cela ne m'impacte pas trop : je peux continuer à utiliser les images que
j'ai déjà téléchargées (j'ai attrapé Ubuntu Noble avant que l'image
disparaisse). Mais à moyen terme il faudra bien que je trouve une
alternative.

Ce que j'ai envisagé :

 1. Continuer d'utiliser Vagrant avec, si nécessaire, des images
    non-officielles. Je n'aime pas trop cette idée car je n'aime pas
    être dépendant d'un logiciel non-libre, je ne pourrais pas installer
    vagrant avec apt par la suite, et il faut faire confiance aux
    développeurs de ces images. Mais c'est peut-être la solution la plus
    simple à court terme.


 2. Utiliser VirtualBox. C'est ça qui tourne sous le capot de Vagrant,
    mais le clicodrome de VirtualBox est lourd et lent. Il faut se taper
    l'installation de l'OS. Il faut lancer un environnement graphique
    qui m'est inutile juste pour ouvrir un terminal. Je n'oserais pas
    lancer VirtualBox depuis une session ssh -X.


 3. Utiliser des conteneurs. Ça, pour le coup, c'est super léger. Mais
    les images des distributions sont tellement dépouillées que je n'ai
    pas l'impression d'être dans la vraie distribution. Est-ce que je
    peux tester le build du logiciel dans un conteneur Ubuntu Noble et
    prétendre ensuite que ça a été testé sur Ubuntu Noble ? Et je n'aime
    pas l'idée de compiler en tant que root.


 4. Libvirt / qemu / KVM. Là je n'y connais rien. J'ai l'impression que
    ce sont des briques bas niveau, mais peut-être que je me trompe...


Bref, je suis un peu paumé, et je suis preneur d'idées et retours
d'expériences. Ce que j'aimerais retrouver c'est :

– un outil utilisable en ligne de commande ;

– simple à configurer (c.f. le Vagrantfile) ;

– simple à utiliser (c.f. « vagrant up »).

Bon week-end !

Edgar.

[1] https://feellgood.neel.cnrs.fr
[2] https://www.vagrantup.com
[3] https://github.com/feellgood/FeeLLGood/blob/master/ci-tests/Vagrantfile
[4] https://ir.hashicorp.com/news-releases/news-release-details/hashicorp-adopts-business-source-license-future-releases-its
[5] https://documentation.ubuntu.com/public-images/en/latest/public-images-explanation/vagrant/#support
[6] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1049999