Skip to main content

Présentation des conteneurs de développement

Lorsque vous travaillez dans un codespace, l’environnement dans lequel vous travaillez est créé Ă  l’aide d’un conteneur de dĂ©veloppement hĂ©bergĂ© sur une machine virtuelle.

Qui peut utiliser cette fonctionnalité ?

People with write permissions to a repository can create or edit the codespace configuration.

À propos des conteneurs de dĂ©veloppement

Les conteneurs de développement sont des conteneurs Docker spécifiquement configurés pour fournir un environnement de développement complet. Chaque fois que vous travaillez dans un codespace, vous utilisez un conteneur de développement sur une machine virtuelle.

Vous pouvez configurer le conteneur de dĂ©veloppement pour un dĂ©pĂŽt de façon Ă  ce que les codespaces créés pour ce dĂ©pĂŽt vous offrent un environnement sur mesure et complet avec l’ensemble des outils et runtimes dont vous avez besoin pour travailler sur un projet spĂ©cifique. Si vous ne dĂ©finissez pas de configuration dans le dĂ©pĂŽt, GitHub Codespaces utilise une configuration par dĂ©faut contenant de nombreux outils courants dont votre Ă©quipe pourrait avoir besoin pour le dĂ©veloppement de votre projet. Consultez Utilisation de la configuration de conteneur de dĂ©veloppement par dĂ©faut.

Les fichiers de configuration d’un conteneur de dĂ©veloppement sont contenus dans un rĂ©pertoire .devcontainer dans votre dĂ©pĂŽt. Vous pouvez utiliser Visual Studio Code pour ajouter des fichiers de configuration Ă  votre place. Vous pouvez opĂ©rer un choix dans une sĂ©lection de configurations prĂ©dĂ©finies pour diffĂ©rents types de projet. Vous pouvez utiliser celles-ci sans configuration supplĂ©mentaire, ou les modifier pour affiner l’environnement de dĂ©veloppement qu’elles produisent. Consultez Utilisation d’une configuration de conteneur de dĂ©veloppement prĂ©dĂ©finie.

Vous pouvez Ă©galement ajouter vos propres fichiers de configuration personnalisĂ©s. Consultez CrĂ©ation d’une configuration de conteneur de dĂ©veloppement personnalisĂ©e.

Vous pouvez dĂ©finir une configuration de conteneur de dĂ©veloppement unique pour un dĂ©pĂŽt, diffĂ©rentes configurations pour diffĂ©rentes branches ou plusieurs configurations. Lorsque plusieurs configurations sont disponibles, les utilisateurs peuvent choisir leur configuration prĂ©fĂ©rĂ©e quand ils crĂ©ent un codespace. Cela est particuliĂšrement utile pour les dĂ©pĂŽts volumineux contenant du code source dans diffĂ©rents langages de programmation ou pour diffĂ©rents projets. Vous pouvez crĂ©er un choix de configurations qui permettent Ă  diffĂ©rentes Ă©quipes de travailler dans un codespace configurĂ© de maniĂšre appropriĂ©e pour le travail qu’elles accomplissent.

Quand vous crĂ©ez un codespace Ă  partir d’un modĂšle, vous pouvez commencer avec un ou plusieurs fichiers de configuration de conteneur de dĂ©veloppement dans votre espace de travail. Pour configurer davantage votre environnement, vous pouvez ajouter des paramĂštres Ă  ces fichiers ou en supprimer et regĂ©nĂ©rer le conteneur pour appliquer les modifications au codespace dans lequel vous travaillez. Si vous publiez votre codespace dans un dĂ©pĂŽt sur GitHub, tous les codespaces créés Ă  partir de ce dĂ©pĂŽt partagent la configuration que vous avez dĂ©finie. Consultez Application de modifications de configuration Ă  un codespace et CrĂ©ation d’un codespace Ă  partir d’un modĂšle.

devcontainer.json

Le fichier principal d’une configuration de conteneur de dĂ©veloppement est le fichier devcontainer.json. Vous pouvez l’utiliser pour dĂ©terminer l’environnement de codespaces créés pour votre dĂ©pĂŽt. Le contenu de ce fichier dĂ©finit un conteneur de dĂ©veloppement qui peut inclure des infrastructures, des outils, des extensions et un rĂ©acheminement de port. Le fichier devcontainer.json contient gĂ©nĂ©ralement une rĂ©fĂ©rence Ă  un Dockerfile qui est normalement situĂ© Ă  cĂŽtĂ© du fichier devcontainer.json.

Si vous crĂ©ez un codespace Ă  partir d’un dĂ©pĂŽt sans fichier devcontainer.json ou que vous commencez Ă  partir du modĂšle vide de GitHub, la configuration de conteneur de dĂ©veloppement par dĂ©faut est utilisĂ©e. Consultez Utilisation de la configuration de conteneur de dĂ©veloppement par dĂ©faut.

Le fichier devcontainer.json se trouve généralement dans le répertoire .devcontainer de votre dépÎt. Vous pouvez également le placer directement à la racine du dépÎt, auquel cas le nom de fichier doit commencer par un point : .devcontainer.json.

Si vous souhaitez disposer d’un choix de configurations de conteneur de dĂ©veloppement dans votre dĂ©pĂŽt, toutes les alternatives au fichier .devcontainer/devcontainer.json (ou .devcontainer.json) doivent se trouver dans leur propre sous-rĂ©pertoire dans le chemin d’accĂšs .devcontainer/SUBDIRECTORY/devcontainer.json. Par exemple, vous pourriez avoir le choix entre deux configurations :

  • .devcontainer/database-dev/devcontainer.json
  • .devcontainer/gui-dev/devcontainer.json

Lorsque vous avez plusieurs fichiers devcontainer.json dans votre dĂ©pĂŽt, chaque codespace est créé Ă  partir d’une seule des configurations. Des paramĂštres ne peuvent pas ĂȘtre importĂ©s ou hĂ©ritĂ©s entre fichiers devcontainer.json. Si un fichier devcontainer.json dans un sous-rĂ©pertoire personnalisĂ© a des fichiers dĂ©pendants, tels que le Dockerfile ou des scripts exĂ©cutĂ©s par des commandes dans le fichier devcontainer.json, il est recommandĂ© de colocaliser ces fichiers dans le mĂȘme sous-rĂ©pertoire.

Pour plus d’informations sur la façon de choisir votre configuration de conteneur de dĂ©veloppement prĂ©fĂ©rĂ©e lorsque vous crĂ©ez un codespace, consultez CrĂ©ation d’un codespace pour un dĂ©pĂŽt.

Pour plus d’informations sur les paramĂštres et les propriĂ©tĂ©s que vous pouvez dĂ©finir dans un fichier devcontainer.json, consultez la spĂ©cification sur le site web Development Containers.

Comment utiliser le devcontainer.json

Il est utile de considĂ©rer que le fichier devcontainer.json fournit une « customisation » plutĂŽt qu’une « personnalisation ». Vous ne devriez inclure que des Ă©lĂ©ments dont toute personne travaillant sur votre codebase a besoin en tant que composants standard de l’environnement de dĂ©veloppement, pas des Ă©lĂ©ments correspondant Ă  des prĂ©fĂ©rences personnelles. Il est bon de normaliser des Ă©lĂ©ments tels que des linters en exigeant que chacun les installe, et par consĂ©quent de les inclure dans votre fichier devcontainer.json. En revanche, des Ă©lĂ©ments tels que des Ă©lĂ©ments dĂ©coratifs ou des thĂšmes d’interface utilisateur sont des choix personnels qui n’ont pas leur place dans le fichier devcontainer.json.

Vous pouvez personnaliser vos codespaces en utilisant dotfiles et Synchronisation des paramĂštres. Consultez Personnalisation de GitHub Codespaces pour votre compte.

Dockerfile

Vous pouvez ajouter un Dockerfile à votre configuration de conteneur de développement.

Le Dockerfile est un fichier texte contenant les instructions nĂ©cessaires pour crĂ©er une image conteneur Docker. Cette image est utilisĂ©e pour gĂ©nĂ©rer un conteneur de dĂ©veloppement chaque fois que quelqu’un crĂ©e un codespace Ă  l’aide du fichier devcontainer.json rĂ©fĂ©rençant ce Dockerfile. Les instructions figurant dans le Dockerfile commencent gĂ©nĂ©ralement par rĂ©fĂ©rencer une image parente sur laquelle sera basĂ©e la nouvelle image qui sera créée. Viennent ensuite des commandes qui sont exĂ©cutĂ©es pendant le processus de crĂ©ation de l’image, par exemple, pour installer des packages logiciels.

Le Dockerfile d’un conteneur de dĂ©veloppement se trouve gĂ©nĂ©ralement dans le dossier .devcontainer, Ă  proximitĂ© du devcontainer.json dans lequel il est rĂ©fĂ©rencĂ©.

Remarque

Au lieu d’utiliser un Dockerfile, vous pouvez utiliser la propriĂ©tĂ© image dans le fichier devcontainer.json pour faire rĂ©fĂ©rence directement Ă  une image existante que vous souhaitez utiliser. L’image que vous spĂ©cifiez ici doit ĂȘtre autorisĂ©e par toute stratĂ©gie d’image d’organisation qui a Ă©tĂ© dĂ©finie. Consultez Restriction de l’image de base pour les codespaces. En l’absence de Dockerfile ou d’image, l’image conteneur par dĂ©faut est utilisĂ©e. Consultez Utilisation de la configuration de conteneur de dĂ©veloppement par dĂ©faut.

Exemple Dockerfile simple

L’exemple suivant utilise quatre instructions :

ARG définit une variable de temps de génération.

FROM spĂ©cifie l’image parente sur laquelle l’image Docker gĂ©nĂ©rĂ©e sera basĂ©e. Si une stratĂ©gie d’image de base a Ă©tĂ© configurĂ©e, ce qui autorise uniquement l’utilisation de certaines images, l’image spĂ©cifiĂ©e doit correspondre Ă  l’une des rĂ©fĂ©rences d’image dĂ©finies dans la stratĂ©gie. Si ce n’est pas le cas, les codespaces de ce rĂ©fĂ©rentiel sont créés en mode de rĂ©cupĂ©ration. Consultez Restriction de l’image de base pour les codespaces.

COPY copie un fichier Ă  partir du rĂ©fĂ©rentiel et l’ajoute au systĂšme de fichiers du codespace.

RUN met Ă  jour les listes de packages et exĂ©cute un script. Vous pouvez Ă©galement utiliser une instruction RUN pour installer des logiciels, comme l’indiquent les instructions commentĂ©es. Pour exĂ©cuter plusieurs commandes, utilisez && pour combiner les commandes dans une seule instruction RUN.

Dockerfile
ARG VARIANT="16"
FROM mcr.microsoft.com/devcontainers/javascript-node:1-${VARIANT}

RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
    && apt-get -y install --no-install-recommends bundler

# [Optional] Uncomment if you want to install an additional version
#  of node using nvm
# ARG EXTRA_NODE_VERSION=18
# RUN su node -c "source /usr/local/share/nvm/nvm.sh \
#    && nvm install ${EXTRA_NODE_VERSION}"

COPY ./script-in-your-repo.sh /tmp/scripts/script-in-codespace.sh
RUN apt-get update && bash /tmp/scripts/script-in-codespace.sh

Remarque

Dans l’exemple ci-dessus, le script copiĂ© dans le codespace (script-in-your-repo.sh) doit exister dans votre rĂ©fĂ©rentiel.

Pour plus d’informations sur les instructions concernant Dockerfile, consultez Dockerfile reference dans la documentation Docker.

Utilisation d’un Dockerfile

Pour utiliser un Dockerfile dans une configuration de conteneur de dĂ©veloppement, rĂ©fĂ©rencez-le dans votre fichier devcontainer.json Ă  l’aide de la propriĂ©tĂ© dockerfile.

JSONC
{
  // ...
  "build": { "dockerfile": "Dockerfile" },
  // ...
}

DiffĂ©rentes options s’offrent Ă  vous si vous souhaitez utiliser l’orchestration de conteneur existante dans votre conteneur de dĂ©veloppement. Voir « Options d’orchestration Â» de la spĂ©cification sur le site web Conteneurs de dĂ©veloppement.

Utilisation de la configuration de conteneur de développement par défaut

Si vous n’ajoutez pas de configuration de conteneur de dĂ©veloppement Ă  votre rĂ©fĂ©rentiel ou si votre configuration ne spĂ©cifie pas d’image de base Ă  utiliser, GitHub crĂ©e un conteneur Ă  partir d’une image Linux par dĂ©faut. Cette image Linux inclut un certain nombre de versions de runtime pour des langages populaires tels que Python, Node, PHP, Java, Go, C++, Ruby et .NET Core/C#. Les derniĂšres versions LTS de ces langages sont utilisĂ©es. Il y a Ă©galement des outils pour prendre en charge la science des donnĂ©es et l’apprentissage automatique, tels que JupyterLab et Conda. L’image du conteneur de dĂ©veloppement par dĂ©faut comprend Ă©galement d’autres outils et utilitaires de dĂ©veloppement tels que Git, GitHub CLI, yarn, openssh et vim. Pour voir l’ensemble des langages, runtimes et outils inclus, utilisez la commande devcontainer-info content-url Ă  l’intĂ©rieur de votre terminal codespace, et suivez l’URL que la commande gĂ©nĂšre.

Pour plus d’informations sur ce qui est inclus dans l’image Linux par dĂ©faut, consultez le dĂ©pĂŽt devcontainers/images.

La configuration par défaut est une bonne option si vous travaillez sur un petit projet utilisant les langages et outils fournis par GitHub Codespaces.

Remarque

GitHub ne facture pas le stockage des conteneurs créés Ă  partir de l’image du conteneur de dĂ©veloppement par dĂ©faut. Pour plus d’informations sur la facturation du stockage de codespaces, consultez Facturation GitHub Codespaces. Pour plus d’informations sur la façon de vĂ©rifier si un codespace a Ă©tĂ© créé Ă  partir de l’image conteneur de dĂ©veloppeur par dĂ©faut, consultez Tirer le meilleur parti de votre utilisation incluse.

Utilisation d’une configuration de conteneur de dĂ©veloppement prĂ©dĂ©finie

Si vous utilisez Codespaces dans Visual Studio Code ou dans un navigateur web, vous pouvez créer une configuration de conteneur de développement pour votre dépÎt en choisissant parmi une liste de configurations prédéfinies. Ces configurations fournissent des paramétrages courants pour des types de projets particuliers et peuvent vous aider à démarrer rapidement avec une configuration comprenant déjà les options de conteneur, les paramÚtres Visual Studio Code et les extensions Visual Studio Code appropriés à installer.

L’utilisation d’une configuration prĂ©dĂ©finie est une excellente idĂ©e si vous avez besoin d’une extensibilitĂ© supplĂ©mentaire. Vous pouvez Ă©galement commencer avec une configuration prĂ©dĂ©finie et la modifier en fonction des besoins de votre projet. Pour plus d’informations sur les dĂ©finitions de conteneurs de dĂ©veloppement prĂ©dĂ©finis, consultez le dĂ©pĂŽt devcontainers/images.

Vous pouvez ajouter une configuration de conteneur de dĂ©veloppement prĂ©dĂ©finie lorsque vous travaillez dans un codespace ou localement sur un dĂ©pĂŽt. Pour y parvenir dans VS Code quand vous travaillez localement et que vous n’ĂȘtes pas connectĂ© Ă  un codespace, l’extension l’extension « Conteneurs de dĂ©veloppement Â» doit ĂȘtre installĂ©e et activĂ©e. Pour plus d’informations sur cette extension, consultez la VS Code Marketplace. La procĂ©dure suivante dĂ©crit le processus quand vous utilisez un codespace. Les Ă©tapes dĂ©crites dans VS Code quand vous n’ĂȘtes pas connectĂ© Ă  un codespace sont trĂšs similaires.

  1. AccĂ©dez Ă  la Visual Studio Code Command Palette (Maj+Commande+P / Ctrl+Maj+P), puis commencez Ă  taper « ajouter un dĂ©veloppement Â». Cliquez sur Codespaces : ajouter des fichiers config de conteneur de dĂ©veloppement.

    Capture d’écran de la palette de commandes, avec « ajouter Â» entrĂ© et « Codespaces : ajouter des fichiers config de conteneur de dĂ©veloppement Â» listĂ©.

  2. Cliquez sur Créer une nouvelle configuration.

  3. Cliquez sur Afficher toutes les définitions.

    Capture d’écran du menu « Ajouter des fichiers de configuration de conteneur de dĂ©veloppement Â» avec la liste dĂ©roulante montrant diffĂ©rentes options, notamment « Afficher toutes les dĂ©finitions Â».

  4. Cliquez sur la définition que vous souhaitez utiliser.

    Capture d’écran du menu « Ajouter des fichiers de configuration de conteneur de dĂ©veloppement Â» montrant des options comme « Alpine Â», « C# (.NET) Â», « C++ Â» et « Debian Â».

  5. Suivez les invites pour personnaliser votre définition.

  6. Cliquez sur OK.

  7. Si vous travaillez dans un codespace, appliquez vos modifications en cliquant sur RegĂ©nĂ©rer maintenant dans la fenĂȘtre contextuelle en bas Ă  droite de la fenĂȘtre. Pour plus d’informations sur la regĂ©nĂ©ration de votre conteneur, consultez Application de modifications de configuration Ă  un codespace.

    Capture d’écran du message : « Nous avons remarquĂ© un changement dans la configuration du conteneur de dĂ©veloppement Â». En dessous se trouve le bouton « RegĂ©nĂ©rer maintenant Â».

Ajout de fonctionnalités à votre fichier devcontainer.json

Les composants sont des unitĂ©s autonomes de code d’installation et de configuration de conteneur de dĂ©veloppement, conçus pour fonctionner sur un large Ă©ventail d’images conteneur de base. Vous pouvez utiliser des composants pour ajouter rapidement des outils, des runtimes ou des bibliothĂšques Ă  votre image codespace. Pour plus d’informations, consultez les composants disponibles et la spĂ©cification des composants sur le site web Development Containers.

Vous pouvez ajouter des composants à un fichier devcontainer.json à partir de VS Code ou de votre dépÎt sur GitHub. Consultez Ajout de fonctionnalités à un fichier devcontainer.json.

CrĂ©ation d’une configuration de conteneur de dĂ©veloppement personnalisĂ©e

Si aucune des configurations prédéfinies ne répond à vos besoins, vous pouvez créer une configuration personnalisée en écrivant votre propre fichier devcontainer.json.

  • Si vous ajoutez un seul fichier devcontainer.json qui sera utilisĂ© par toute personne crĂ©ant un codespace Ă  partir de votre dĂ©pĂŽt, crĂ©ez le fichier dans un rĂ©pertoire .devcontainer Ă  la racine du dĂ©pĂŽt.

  • Si vous souhaitez offrir aux utilisateurs un choix de configuration, vous pouvez crĂ©er plusieurs fichiers devcontainer.json personnalisĂ©s, chacun situĂ© dans un sous-rĂ©pertoire distinct du rĂ©pertoire .devcontainer.

    Remarque

    • Vous ne pouvez pas placer vos fichiers devcontainer.json dans des rĂ©pertoires situĂ©s plusieurs niveaux en dessous de .devcontainer. Par exemple, un fichier Ă  l’emplacement .devcontainer/teamA/devcontainer.json fonctionnera, mais pas .devcontainer/teamA/testing/devcontainer.json.
    • Lorsque les utilisateurs crĂ©ent des codespaces Ă  partir du bouton Utiliser ce modĂšle dans un dĂ©pĂŽt de modĂšles, ils n’ont pas le choix entre plusieursq configurations. Le codespace est gĂ©nĂ©rĂ© en fonction de la configuration par dĂ©faut dĂ©finie dans .devcontainer/devcontainer.json ou dans .devcontainer.json Ă  la racine de votre dĂ©pĂŽt. Consultez Configuration d’un dĂ©pĂŽt modĂšle pour GitHub Codespaces.

    Si plusieurs fichiers devcontainer.json se trouvent dans le dĂ©pĂŽt, ils sont rĂ©pertoriĂ©s dans la liste dĂ©roulante Configuration de conteneur de dĂ©veloppement dans la page des options de crĂ©ation de codespace. Consultez CrĂ©ation d’un codespace pour un dĂ©pĂŽt.

    Capture d’écran de la page d’options pour crĂ©er des codespaces, montrant une liste dĂ©roulante avec un choix de fichiers de configuration.

Ajout d’un fichier devcontainer.json

Si vous n’avez pas encore de devcontainer.json fichier dans votre rĂ©fĂ©rentiel, vous pouvez rapidement en ajouter un Ă  partir de GitHub.

  1. Accédez à votre dépÎt et cliquez sur la liste déroulante Code.

  2. Sous l’onglet Codespaces, cliquez sur les points de suspension ( ... ), puis sĂ©lectionnez Configurer le conteneur de dĂ©veloppement.

    Capture d’écran de la liste dĂ©roulante « Code Â» et, dans celle-ci, une autre liste dĂ©roulante avec l’option « Configurer le conteneur de dĂ©veloppement Â» mise en Ă©vidence.

Un nouveau fichier .devcontainer/devcontainer.json s’ouvre dans l’éditeur. Le fichier contient certaines propriĂ©tĂ©s initiales, notamment un objet features auquel vous pouvez ajouter de nouveaux outils, bibliothĂšques ou runtimes. Consultez Ajout de fonctionnalitĂ©s Ă  un fichier devcontainer.json.

Si votre dépÎt contient déjà un ou plusieurs fichiers devcontainer.json, cliquez sur Configurer le conteneur de développement pour ouvrir le fichier devcontainer.json existant avec la priorité la plus élevée en fonction de la spécification sur le site web Development Containers.

SĂ©lection de configuration par dĂ©faut lors de la crĂ©ation d’un codespace

Si les fichiers .devcontainer/devcontainer.json ou .devcontainer.json existent, il s’agit de la sĂ©lection par dĂ©faut dans la liste des fichiers de configuration disponibles lorsque vous crĂ©ez un codespace. Si aucun des fichiers n’existe, la configuration du conteneur de dĂ©veloppement par dĂ©faut est sĂ©lectionnĂ©e par dĂ©faut.

Dans la capture d’écran suivante, le dĂ©pĂŽt ne contient pas de fichiers .devcontainer/devcontainer.json ni de fichiers .devcontainer.json, donc la configuration de conteneur de dĂ©veloppement par dĂ©faut est sĂ©lectionnĂ©e. Toutefois, deux autres fichiers de configuration ont Ă©tĂ© dĂ©finis dans les sous-rĂ©pertoires du rĂ©pertoire .devcontainer. Ils sont donc rĂ©pertoriĂ©s en tant qu’options.

Capture d’écran de la liste dĂ©roulante « Configuration du conteneur de dĂ©veloppement Â» avec le choix de la configuration par dĂ©faut sĂ©lectionnĂ©.

Édition du fichier devcontainer.json

Vous pouvez ajouter et modifier les clĂ©s de configuration prises en charge dans le fichier devcontainer.json pour spĂ©cifier des aspects de l’environnement du codespace, comme les extensions VS Code qui seront installĂ©es. Pour plus d’informations sur les paramĂštres et les propriĂ©tĂ©s que vous pouvez dĂ©finir dans un fichier devcontainer.json, consultez la spĂ©cification sur le site web Development Containers.

Le fichier devcontainer.json est Ă©crit au format JSONC (JSON avec commentaires). Cela vous permet d’inclure des commentaires dans le fichier de configuration. Consultez Édition de JSON avec VS Code dans la documentation VS Code.

Remarque

Si vous utilisez un linter pour valider le fichier devcontainer.json, assurez-vous que celui-ci est défini sur JSONC, non JSON, sans quoi les commentaires seront signalés comme des erreurs.

Paramùtres d’interface pour VS Code

Vous pouvez configurer les paramĂštres d’interface pour VS Code avec trois Ă©tendues : Utilisateur, [Codespaces] distants et Espace de travail. Vous pouvez afficher ces Ă©tendues dans l’éditeur ParamĂštres de VS Code.

Pour afficher l’éditeur ParamĂštres, utilisez le raccourci clavier Commande+, (Mac) / Ctrl+, (Linux/Windows).

Capture d’écran de l’éditeur « ParamĂštres Â» avec les onglets des trois Ă©tendues mis en Ă©vidence avec un encadrĂ© orange.

Si un paramĂštre est dĂ©fini dans plusieurs Ă©tendues, les paramĂštres de l’étendue Espace de travail sont prioritaires, suivis de ceux de l’étendue [Codespaces] distants et de ceux de l’étendue Utilisateur.

Vous pouvez dĂ©finir des paramĂštres d’interface par dĂ©faut pour VS Code Ă  deux endroits.

  • Les paramĂštres d’interface dĂ©finis dans le fichier .vscode/settings.json dans votre dĂ©pĂŽt sont appliquĂ©s en tant que paramĂštres dĂ©limitĂ©s Ă  l’espace de travail dans le codespace.
  • Les paramĂštres d’interface dĂ©finis dans la clĂ© settings dans le fichier devcontainer.json sont appliquĂ©s en tant que paramĂštres dĂ©limitĂ©s Ă  [Codespaces] distants dans le codespace.

Application de modifications de configuration Ă  un codespace

Les modifications apportĂ©es Ă  une configuration seront appliquĂ©es la prochaine fois que vous crĂ©erez un codespace. Toutefois, vous pouvez appliquer vos modifications Ă  un codespace existant en rĂ©gĂ©nĂ©rant le conteneur. Vous pouvez effectuer cette opĂ©ration dans un codespace dans le client web ou l’application de bureau VS Code, ou vous pouvez utiliser GitHub CLI.

Remarque

Quand vous regĂ©nĂ©rez le conteneur dans un codespace, les changements que vous avez faits en dehors du rĂ©pertoire /workspaces sont effacĂ©s. Les changements que vous avez faits Ă  l’intĂ©rieur du rĂ©pertoire /workspaces, qui comprend le clone du dĂ©pĂŽt ou le modĂšle Ă  partir duquel vous avez créé le codespace, sont conservĂ©s aprĂšs la regĂ©nĂ©ration. Pour plus d’informations, consultez « PrĂ©sentation approfondie de GitHub Codespaces Â».

RegĂ©nĂ©ration du conteneur de dĂ©veloppement dans le client web ou l’application de bureau VS Code

  1. AccĂ©dez Ă  la VS Code Command Palette (Maj+Commande+P / Ctrl+Maj+P), puis commencez Ă  taper « regĂ©nĂ©rer Â». Cliquez sur Codespaces : RegĂ©nĂ©rer le conteneur.

    Capture d’écran de la Palette de commandes avec une recherche pour « regĂ©nĂ©rer le conteneur Â» et l’option « Codespace : regĂ©nĂ©rer le conteneur Â» est mise en Ă©vidence dans la liste dĂ©roulante.

    Conseil

    Vous souhaiterez parfois effectuer une rĂ©gĂ©nĂ©ration complĂšte pour vider votre cache et rĂ©gĂ©nĂ©rer votre conteneur avec de nouvelles images. Pour plus d’informations, consultez « RegĂ©nĂ©ration du conteneur dans un codespace Â».

  2. Si les changements apportĂ©s Ă  la configuration de votre conteneur de dĂ©veloppement entraĂźnent une erreur de conteneur, votre codespace s’exĂ©cute en mode de rĂ©cupĂ©ration et vous voyez s’afficher un message d’erreur.

    Capture d’écran d’un message indiquant que le codespace s’exĂ©cute en mode de rĂ©cupĂ©ration. Sous le message se trouvent les boutons intitulĂ©s « Annuler Â» et « Afficher le journal de crĂ©ation Â».

    • Pour diagnostiquer l’erreur en rĂ©visant les journaux de crĂ©ation, cliquez sur Afficher le journal de crĂ©ation.
    • Pour corriger les erreurs identifiĂ©es dans les journaux, mettez Ă  jour votre fichier devcontainer.json.
    • Pour appliquer les modifications, rĂ©gĂ©nĂ©rez votre conteneur.

Utilisation de GitHub CLI pour régénérer un conteneur de développement

Si vous avez changĂ© une configuration de conteneur de dĂ©veloppement en dehors de VS Code (par exemple, sur GitHub), vous pouvez utiliser GitHub CLI pour regĂ©nĂ©rer le conteneur de dĂ©veloppement d’un codespace existant.

  1. Dans le terminal, entrez la commande suivante.

    gh codespace rebuild
    

    Vos codespaces sont répertoriés.

  2. Utilisez les touches de direction de votre clavier pour mettre en surbrillance l’espace de code requis, puis appuyez sur EntrĂ©e.

Pour aller plus loin