Devbox, ou comment (enfin) onboarder un dev en 5min chrono sur son projet

Caisse à outils futuriste "DEVBOX" d'où émanent des outils virtuels et des logos de langages de programmation, posée sur un établi technologique avec un cube Docker lumineux.

Le scénario est un classique du film d'horreur en entreprise.

C'est le "Day 1" d'un nouveau développeur. Il est motivé, son café est chaud, sa machine est prête. On lui donne l'accès au repo. Il clone. Il lance le projet.

Et là, le drame :

🔴 Error: Node version 18.x required (found 14.x).

🔴 Error: libssl.so.1.1: cannot open shared object file.

S'ensuivent deux jours de "bricolage". On modifie le .zshrc, on installe nvm, jenv, pyenv, on casse la config d'un autre projet... Le fameux "purgatoire de l'environnement local".

L'onboarding ne devrait pas être une cérémonie mystique. En 2026 ça devrait être un simple script. Surtout si l’on rapporte cela à l’échelle du nombre de développeurs et consultants avec une moyenne (ambitieuse) de 2 ou 3 jours à chaque démarrage. Que de temps perdu !

Et si le fichier de configuration de votre projet suffisait à installer tous les outils, sans la lourdeur de Docker ?

C'est la promesse de DevBox : une boîte à outils en ligne de commande qui transforme un simple fichier de configuration en un environnement de développement complet, isolé et natif. Lancé en 2022 par l'entreprise Jetify, le projet open-source connaît une adoption rapide et cumule déjà plus de 11K étoiles sur GitHub.

DevBox : La puissance de Nix, sans la douleur

Pour comprendre l'intérêt de DevBox, il faut d'abord saluer le moteur qui tourne en dessous : Nix.

Nix est le Saint Graal de la gestion de paquets : il est purement fonctionnel, immuable et garantit qu'un paquet installé aujourd'hui sera identique au bit près dans 10 ans.

Le problème ? Nix est notoirement difficile à apprendre. Il demande de maîtriser un langage de configuration complexe et verbeux. C'est souvent un frein rédhibitoire pour les équipes qui veulent juste coder.

C'est là qu'intervient DevBox. Voyez DevBox comme une "télécommande simplifiée" ou un wrapper élégant.

  • Sans DevBox : Vous devez écrire des scripts .nix cryptiques pour configurer votre environnement.
  • Avec DevBox : Vous remplissez un simple fichier devbox.json (aussi facile à lire qu'un package.json) et l'outil se charge de "parler" à Nix pour vous.

Maintenant que la barrière technique est levée, quelle est la différence d'expérience par rapport à Docker ? Utilisons une analogie simple :

  • Docker, c'est l'hôtel. C'est standardisé, isolé, sécurisé. Mais vous n'êtes pas chez vous. Les fichiers sont montés via des volumes (lent), le réseau est une couche supplémentaire. C'est parfait pour la Production.
  • DevBox, c'est la Réalité Augmentée. Vous restez chez vous (votre terminal natif, votre OS). Mais quand vous enfilez les lunettes (quand vous lancez DevBox), les outils dont vous avez besoin apparaissent comme par magie. C'est natif, instantané, et ça disparaît quand vous les enlevez.

La Preuve par l'Exemple (Le "5 Minutes Challenge")

Assez de théorie. Prenons un cas concret qui parle à tout Tech.

Imaginez un projet Python un peu capricieux qui nécessite :

  • Python 3.10 (alors que votre système est en 3.12).
  • Poetry pour gérer les paquets.
  • Un client PostgreSQL spécifique.

Avec DevBox, voici à quoi ressemble l'installation :

Étape 1 : Création du contrat

Dans votre dossier projet, initialisez l'environnement.

bash
devbox init

Étape 2 : L'installation isolée

Ajoutez vos outils. DevBox va chercher les binaires pré-compilés (pas de compilation interminable).

bash
devbox add python@3.10 poetry postgresql

Étape 3 : L'activation

Entrez dans la matrice.

bash
devbox shell

C'est fini.

Si vous tapez python --version, le terminal vous répondra 3.10, même si votre système est pollué par d'autres versions.

Pour le nouveau développeur qui arrive, l'onboarding se résume désormais à deux commandes :

git clone et devbox shell.

Sous le capot : Pourquoi c'est fiable ?

Je sais ce que vous pensez : "Encore un wrapper node qui va casser mon PATH ?"

Non. DevBox est une interface accessible pour Nix, l'un des gestionnaire de paquets les plus robustes.

  • Le Store Immuable : DevBox n'installe rien dans /usr/bin. Tout va dans /nix/store, en lecture seule. Vous pouvez avoir 10 versions de Node.js côte à côte, elles ne se connaissent pas.
  • L'illusion du Shell : Quand vous lancez le shell, DevBox modifie temporairement votre PATH pour pointer vers ces versions isolées.
  • Le Cache Mutualisé : C'est là que DevBox brille. Si vous avez cinq projets en Node 18, DevBox ne le télécharge qu'une seule fois. Contrairement à Docker qui réinstalle l'OS à chaque image, DevBox partage les binaires communs. Gain de place, gain de temps.

Docker & DevBox : Le bon outil au bon endroit

DevBox et Docker ne sont pas concurrents. Ce sont deux couches différentes de votre stack. Voyez DevBox comme votre Boîte à Outils ultime (Toolbox). Son rôle est de préparer votre établi. Elle vous apporte les langages (Python, Go) et les clients (CLI) nécessaires pour travailler.

Et devinez quoi ? Parmi ces outils, DevBox peut parfaitement installer et configurer... Docker ou Kubernetes.

Le scénario idéal pour simuler la Production : vous voulez reproduire un environnement de production complexe (Microservices sur K8s) ?

  1. DevBox installe les commandes : kubectl, helm, terraform, aws-cli (dans les versions exactes de la prod).
  2. DevBox lance les scripts : Il configure l'accès à votre cluster local.
  3. Docker/K8s exécutent les services : Ils font tourner les bases de données et les conteneurs applicatifs.

DevBox est le chef d'orchestre, Docker est l'un des instruments.

RôleDevBox (La Boîte à Outils)Docker / Kubernetes (L'Infrastructure)
RôleDevBox (La Boîte à Outils)Docker / Kubernetes (L'Infrastructure)
MissionGérer l'outillage. S'assurer que le développeur a les bonnes clés à molette.Exécuter les services. Faire tourner les briques logicielles lourdes.
Ce qu'il contientCompilateurs (Go, Rust), Interpréteurs (Node, Python), CLI ( docker , kubectl , terraform ).Bases de données (Postgres, Redis), Message Brokers (Kafka), Applications conteneurisées.
Philosophie"Je prépare ton environnement de travail.""Je simule ton environnement de production."

Conclusion : un JSON to run them All

L'infrastructure-as-code a révolutionné la production. Il est temps qu'elle révolutionne l'onboarding. Vos équipes ne devraient pas perdre de temps à configurer des outils. Elles devraient mettre leur énergie sur les tâches où elles ont un maximum de valeurs.

À propos des auteurs

Paul-Alexandre Chrétien

Paul-Alexandre Chrétien

Théo Lanord

Théo Lanord

Maxime Deroullers

Maxime Deroullers

Cet article vous a inspiré ?

Vous avez des questions ou des défis techniques suite à cet article ? Nos experts sont là pour vous aider à trouver des solutions concrètes à vos problématiques.