Aller au contenu

VS Code : Microsoft Extensions Remote

Mise à jour :

logo visual studio code

Les extensions Remote Development transforment Visual Studio Code en un outil de développement distant complet. Grâce à elles, vous pouvez travailler directement sur un serveur via SSH, dans un conteneur Docker, à l’intérieur de WSL ou encore via des tunnels sécurisés, tout en profitant des fonctionnalités locales de VS Code : IntelliSense, débogage, gestion des extensions.

L’objectif ? Éviter les problèmes de compatibilité entre environnements, simplifier l’administration et accélérer le travail collaboratif. Avec un simple clic, vous ouvrez un projet distant comme s’il était stocké sur votre poste.

Les extensions Remote de VsCode

Le Remote Development Extension Pack regroupe plusieurs outils essentiels pour transformer Visual Studio Code en un environnement de développement distant complet. En un seul paquet, vous disposez de tout le nécessaire pour travailler sur un serveur, dans un conteneur, ou même dans une distribution Linux depuis Windows, sans quitter l’éditeur.

Ce pack inclut les extensions suivantes :

Remote-SSH

Avec Remote-SSH, vous pouvez vous connecter à un serveur distant et ouvrir un dossier comme si vous y étiez directement. Tous vos outils habituels de VS Code restent disponibles : IntelliSense, débogage, gestion des extensions et navigation dans les fichiers. Cette extension est particulièrement utile pour l’administration système ou le développement sur des environnements distants (cloud, VM, serveurs bare-metal).

Remote-WSL

L’extension Remote-WSL (Windows Subsystem for Linux) permet aux utilisateurs de Windows de basculer instantanément dans un environnement Linux intégré. Vous pouvez ainsi développer, compiler et exécuter vos projets dans un contexte Linux, tout en gardant le confort de votre poste Windows. C’est l’outil idéal pour les workflows hybrides Windows/Linux.

Remote-Containers

Avec Remote-Containers, vous ouvrez un projet directement dans un conteneur Docker. L’avantage ? Chaque développeur de l’équipe travaille dans le même environnement isolé, avec les mêmes dépendances. Cela garantit la reproductibilité et évite les fameux “ça marche sur ma machine”. Un guide détaillé est disponible ici : utiliser les DevContainers.

Remote-Tunnels

Moins connu, mais tout aussi puissant, Remote-Tunnels permet d’accéder à une machine distante sans configuration SSH. Il suffit de lancer un tunnel sécurisé avec la commande :

Terminal window
code tunnel

Vous pouvez ensuite ouvrir ce poste à distance depuis n’importe quelle autre instance de VS Code. C’est une solution pratique pour le support, l’accès temporaire à une machine client, ou encore pour un poste derrière un pare-feu strict.

En regroupant Remote-SSH, Remote-WSL, Remote-Containers et Remote-Tunnels, le pack Remote Development transforme VS Code en une plateforme de développement universelle, capable de s’adapter à presque tous les environnements.

Fonctionnalités offertes par les extensions Remote de VS Code

Le Remote Development Extension Pack de Visual Studio Code regroupe plusieurs extensions — Remote SSH, Remote WSL, Remote Containers et Remote Tunnels — qui facilitent le travail à distance. Elles offrent un environnement de développement unifié, quel que soit l’endroit où s’exécute le code. Voici un aperçu des principales fonctionnalités disponibles avec ces outils.

Connexion sécurisée à distance

Les extensions Remote permettent de se connecter à différents environnements distants (serveur via SSH, conteneur Docker, distribution WSL ou tunnel sécurisé) directement depuis VS Code. Vous pouvez éditer, déboguer et exécuter du code dans ces environnements comme si vous étiez en local, sans quitter l’éditeur.

Explorateur de fichiers distant

Une fois la connexion établie, vous accédez à l’intégralité du système de fichiers distant depuis l’explorateur de VS Code. Vous pouvez ouvrir, modifier, créer et supprimer des fichiers sur la cible, avec une navigation identique à celle de votre machine locale. Cela simplifie le travail sur des projets complexes répartis sur plusieurs environnements.

Exécution de commandes à distance

Grâce au terminal intégré, vous pouvez exécuter des commandes shell directement dans l’environnement distant (serveur, conteneur, WSL). Que ce soit pour installer des dépendances, gérer des services ou lancer des scripts, tout se fait dans l’interface unifiée de VS Code, sans terminal externe.

Support d’IntelliSense et des extensions

Les fonctionnalités avancées comme IntelliSense (auto-complétion, documentation, suggestions contextuelles) restent disponibles même dans un environnement distant. De plus, vous pouvez installer des extensions spécifiques à chaque cible (par exemple une extension Python activée uniquement dans un conteneur), ce qui améliore la souplesse et évite les conflits entre projets.

Débogage à distance

Les extensions Remote permettent le débogage dans l’environnement cible. Vous pouvez définir des points d’arrêt, suivre l’exécution, analyser les variables et diagnostiquer des problèmes spécifiques à un système donné (Linux, Windows, conteneur Docker). Cela garantit que votre application fonctionne correctement dans des environnements proches de la production.

Gestion de multiples environnements

Vous pouvez configurer plusieurs profils ou contextes (plusieurs serveurs SSH, différentes distributions WSL, divers conteneurs Docker). Le passage d’un environnement à l’autre est instantané, ce qui est idéal pour les développeurs et administrateurs qui jonglent avec plusieurs projets et plateformes.

Redirection de ports et accès aux services

Les extensions Remote offrent des mécanismes comme la redirection de ports ou le tunneling SSH pour accéder à des applications ou services web distants directement depuis votre navigateur local. Par exemple, un service démarré sur un serveur distant (port 8080) peut être consulté via http://localhost:8080 sans être exposé publiquement sur Internet.

Cas d’usage concrets

Les extensions Remote couvrent de nombreux scénarios :

  • Tester des applications web distantes grâce à la redirection de ports.
  • Déboguer dans un environnement proche de la production pour éviter les différences entre systèmes.
  • Collaborer en équipe en utilisant un environnement centralisé identique pour tous.
  • Simplifier le développement hybride Windows/Linux avec Remote-WSL.
  • Garantir la reproductibilité d’un projet avec Remote-Containers.
  • Accéder à des environnements verrouillés via Remote-Tunnels, sans configurer SSH.

Installation et configuration des extensions Remote

Vous avez le choix entre installer le pack ou les extensions individuellement. Dans notre cas, nous allons installer l’extension Remote SSH.

L’installation de l’extension Remote SSH dans Visual Studio Code est simple et peut être effectuée directement depuis la ligne de commande. Voici les étapes pour installer et configurer cette extension.

Installation de l’extension

Tout d’abord, ouvrez Visual Studio Code et accédez au terminal intégré (Ctrl

  • J`). Pour installer l’extension Remote SSH, utilisez la commande suivante :
Terminal window
code --install-extension ms-vscode-remote.remote-ssh

Cette commande télécharge et installe l’extension directement depuis le marketplace de VS Code.

Vous pouvez aussi l’installer en les recherchant dans l’outil d’installation des extensions.

extensions remote vscode

Configuration d’une connexion SSH

Une fois l’extension installée, vous devez configurer les connexions SSH. Vous pouvez commencer par éditer votre fichier ~/.ssh/config, qui stocke les configurations SSH. Par exemple, pour ajouter un nouveau serveur distant, utilisez la commande suivante dans votre terminal :

Terminal window
code ~/.ssh/config

Ajoutez ensuite la configuration suivante pour votre serveur distant :

Terminal window
Host mon-serveur
HostName example.com
User utilisateur
IdentityFile ~/.ssh/id_rsa

Cette configuration permet à VS Code de se connecter au serveur distant via SSH en utilisant l’identifiant spécifié.

Connexion au serveur distant

extensions remote vscode

Une fois le serveur ajouté à la liste des cibles SSH, cliquez simplement sur le nom du serveur dans l’explorateur de sites distants pour initier la connexion. VS Code ouvrira une nouvelle fenêtre dédiée à cette connexion et vous serez connecté à la machine distante.

Vérification et test

Une fois connecté, vous devriez voir l’explorateur de fichiers affichant les répertoires du serveur distant. Pour vérifier que tout fonctionne, essayez d’ouvrir un fichier et d’y apporter des modifications. Vous pouvez également exécuter des commandes dans le terminal intégré de VS Code pour interagir avec le serveur.

Configuration de la redirection de ports

Une fois connecté à votre serveur distant via Remote SSH dans VS Code, vous pouvez configurer la redirection de ports en utilisant l’onglet Ports situé à côté du terminal intégré.

extensions remote vscode

  1. Ouvrir l’onglet Ports : Connectez-vous au serveur distant, puis cliquez sur l’onglet Ports en bas de l’interface, à côté du terminal.
  2. Ajouter un port : Dans l’onglet Ports, cliquez sur l’icône sur le bouton Transférer un port ou + pour ajouter une nouvelle redirection de port. Entrez le numéro du port distant que vous souhaitez rediriger, par exemple 8080, puis le port local correspondant sur lequel vous souhaitez écouter.
  3. Vérifier la connexion : Le port redirigé apparaît dans la liste et vous pouvez y accéder depuis votre navigateur local via http://localhost:8080.

Installation d’extensions sur la machine distante via l’explorateur d’extensions

L’installation d’extensions sur la machine distante est simple via l’explorateur d’extensions dans VS Code.

extensions remote vscode

  1. Accéder à l’explorateur d’extensions : Sur la gauche de l’interface VS Code, cliquez sur l’icône Extensions pour ouvrir l’explorateur d’extensions.
  2. Rechercher l’extension : Dans la barre de recherche, tapez le nom de l’extension que vous souhaitez installer. Par exemple, recherchez “Python” si vous travaillez avec ce langage.
  3. Installer l’extension : Cliquez sur Installer dans SSH : [nom du serveur] pour installer l’extension directement sur la machine distante. L’extension sera alors disponible et fonctionnera comme si elle était installée localement.

Bonnes pratiques

En appliquant ces bonnes pratiques, vous optimiserez votre utilisation de Remote - SSH tout en maintenant la sécurité et la performance de vos environnements distants.

Conclusion

En conclusion, l’utilisation des extensions Remote de Visual Studio Code ouvre de nouvelles perspectives pour le développement à distance. Que ce soit via SSH, WSL, Containers ou Tunnels, vous pouvez travailler directement dans vos environnements cibles, déboguer des applications comme si elles étaient locales et accéder à vos services grâce à la redirection de ports.

Ces outils permettent de gagner en efficacité et de simplifier la gestion des environnements complexes, en réduisant les écarts entre développement local et production. Avec le Remote Development Extension Pack, vous disposez d’une solution flexible et puissante pour aborder vos projets distants avec plus de confiance et de productivité.