IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Devbox, une boîte à outils pour développeur, elle apporte des shells et des conteneurs simples et prévisibles,
Sans avoir besoin d'écrire un fichier Docker

Le , par Bruno

26PARTAGES

5  0 
DevBox est une collection de petits outils pour les développeurs (et les concepteurs) contenant des générateurs, des convertisseurs, des encodeurs et d'autres widgets utiles. C'est également un outil en ligne de commande qui permet de créer facilement des shells et des conteneurs isolés. L'utilisateur commence par définir la liste des paquets requis par son environnement de développement, et Devbox utilise cette définition pour créer un environnement isolé juste pour l'application.

DevBox permet de déclarer la liste des outils nécessaires à un projet via un fichier devbox.json et exécutez devbox shell. Chaque personne travaillant sur le projet obtient un environnement shell avec exactement la même version de ces outils. Les environnements de développement créés sont isolés de tout le reste de votre ordinateur portable. Il peut créer des environnements isolés directement sur votre ordinateur portable, sans qu'une couche supplémentaire de virtualisation ne ralentisse votre système de fichiers ou chaque commande. Lorsque vous serez prêt à diffuser, il le transformera en un conteneur équivalent ; mais pas avant.


Dans le cas où l’utilisateur travaille sur plusieurs projets, qui ont tous besoin de différentes versions d'un même binaire, au lieu d'essayer d'installer des versions contradictoires du même binaire sur l’ordinateur portable, il est possible de créer un environnement isolé pour chaque projet et utiliser la version de son choix pour chacun d'eux.

Devbox analyse le code source et le transforme instantanément en une image conforme à la norme OCI qui peut être déployée sur n'importe quel cloud. Selon ses responsables, l'image est optimisée pour la vitesse, la taille, la sécurité et la mise en cache... et sans avoir besoin d'écrire un fichier Docker. Et contrairement aux buildpacks, il le ferait rapidement. Rappelons que la norme OCI est une norme qui permet l'échange d'enregistrements de données de catalogue pour rechercher et choisir un produit entre des systèmes de gestion.

Les applications ont souvent besoin du même ensemble de dépendances lorsqu’on développe sur notre ordinateur portable et lorsqu’on les conditionne sous forme de conteneur prêt à être déployé sur le cloud. Les environnements de développement de Devbox sont isomorphes : cela signifie que l’utilisateur peut les transformer à la fois en un environnement shell local ou en un conteneur prêt à être déployé dans le cloud.

Installation de Devbox

En plus d'installer Devbox lui-même, nix et docker doivent également être installé puisque Devbox en dépend :

  1. Installer le gestionnaire de paquets Nix.
  2. Installez Docker Engine ou Docker Desktop. (Docker n'est nécessaire que si l’utilisateur crée des conteneurs - la fonctionnalité shell fonctionne sans lui.)
  3. Installez Devbox :

curl -fsSL https://get.jetpack.io/devbox | bash

Shell rapide et déterministe

Création d’un shell de développement avec des outils spécifiques installés. Ces outils ne seront disponibles que lors de l'utilisation de ce shell Devbox, afin de ne pas encombrer la machine.

Ouvrez un terminal dans un nouveau dossier vide.

Initialiser Devbox :

devbox init

Ceci crée un fichier devbox.json dans le répertoire courant. Vous devez le commiter dans le contrôle de source.

Ajoutez des outils de ligne de commande à partir de Nix Packages. Par exemple, pour ajouter Python 3.10 :

devbox add python310

Votre fichier devbox.json garde la trace des paquets que vous avez ajoutés, il devrait maintenant ressembler à ceci :

Code JSON : Sélectionner tout
1
2
3
4
5
{
   "paquets" : [
      "python310"
    ]
}


Démarrez un nouveau shell dans lequel ces outils sont installés :

Devbox shell

Il est possible de savoir que vous êtes dans un shell Devbox (et non dans un terminal normal) car l'invite du shell et le répertoire ont changé. Dans cet exemple, nous avons installé Python 3.10.

Utilisation de Python 3.10

python --version

Vos outils habituels sont également disponibles, y compris les variables d'environnement et les paramètres de configuration.

git config --get utilisateur.nom

Pour quitter le shell Devbox et revenir à votre shell habituel :

exit


Image Docker instantanée

Devbox facilite le conditionnement de l’application dans une image de conteneur conforme à la norme OCI. Devbox analyse le code, identifie automatiquement la chaîne d'outils nécessaires au projet et la construit dans une image Docker. Il est recommandé

  • d’initialiser le projet avec devbox init pour construire l’image ;
  • de construire l'image : devbox build. L'image résultante est nommée devbox ;
  • marquez l'image avec un nom plus descriptif : docker tag devbox my-image:v0.1

Devbox détecte actuellement les langages Go et Python.

Source : DevBox

Et vous ?

Quel est votre avis sur le sujet ?

Au regard de la multiplicité des outils de développement, trouvez-vous nécessaire un outil comme DevBox ?

Voir aussi :

Vite, l'outil pour développeurs web, est à sa version 3. Il vise à fournir une expérience de développement plus rapide et plus légère pour les projets web modernes

Fresh, un framework web de nouvelle génération, conçu pour la vitesse, la fiabilité et la simplicité, il apporte un peu de concurrence pour Next.js

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de devyg
Membre à l'essai https://www.developpez.com
Le 08/09/2022 à 8:43
Ça semble redondant avec plusieurs outils, en tout premier lieu Nix.
0  0