générateur devcontainer.json
Créez un devcontainer.json pour VS Code Dev Containers, avec un Dockerfile optionnel.
générateur devcontainer.json
Choisissez un langage et cet outil génère un devcontainer.json prêt à l'emploi pour l'extension Dev Containers de VS Code (et GitHub Codespaces, qui lit le même fichier). Sélectionnez Node.js, Python, Go, PHP, Java ou une simple image de base Ubuntu, définissez la version et le générateur remplit l'image Microsoft devcontainers correspondante, un utilisateur de conteneur par défaut sensé et un port par défaut à transférer.
Les options correspondent directement aux champs qu'un vrai devcontainer.json nécessite. Activez les fonctionnalités Git et Docker-in-Docker, ou ajoutez Node.js à un conteneur non-Node, et ils arrivent dans l'objet « features » avec la bonne référence ghcr.io. Énumérez les ports transférés, un postCreateCommand et un postStartCommand pour exécuter les étapes de configuration automatiquement au démarrage du conteneur. Les extensions et paramètres VS Code vont sous « customizations.vscode », un identifiant d'extension ou un paramètre clé=valeur par ligne. L'activation de « Monter un volume en cache » ajoute un volume nommé pour le cache de dépendances du langage — node_modules, cache de pip, cache de modules Go — pour qu'une reconstruction ne recommence pas de zéro. L'activation de « Générer également un Dockerfile » remplace le champ « image » par une référence « build » et produit un Dockerfile correspondant à côté.
Les entrées invalides sont supprimées plutôt que de casser le fichier : un port mal formé, un identifiant d'extension qui n'est pas dans la forme publisher.name, ou une ligne de paramètres sans « = » est ignorée, et le champ version ne garde que lettres, chiffres, points et tirets avant d'atteindre la balise d'image. Le résultat est toujours du JSON valide et analysable, et le compteur en direct sous la sortie montre combien de fichiers, de fonctionnalités et de caractères ont été générés au fur et à mesure que vous ajustez les options.
Tout s'exécute localement dans votre navigateur — les détails du projet, la liste des extensions ou la configuration de l'environnement ne quittent jamais votre machine. Copiez le résultat, téléchargez-le en tant que fichier .txt à coller dans .devcontainer/devcontainer.json (et Dockerfile, si vous l'avez généré), ou envoyez-le à l'entrée d'un autre outil pour continuer à travailler dessus.