Aller au contenu

L'extension Remote SSH de Vs Code

Mise à jour :

logo visual studio code

L’extension Remote SSH de Visual Studio Code est un outil puissant pour les développeurs et administrateurs système qui ont besoin de travailler directement sur des serveurs distants. En permettant d’établir une connexion SSH sécurisée depuis vscode, elle offre la possibilité d’éditer, de déboguer et de gérer du code comme si vous étiez connecté localement. Cette extension est particulièrement utile pour gérer des environnements de production, où l’accès direct aux machines est nécessaire tout en conservant la puissance et les fonctionnalités de l’IDE local.

Avec Remote SSH, vous pouvez configurer rapidement des connexions vers différents serveurs en utilisant simplement les clés SSH et les configurations existantes. Cela simplifie énormément les processus de développement et d’administration, en évitant les allers-retours entre plusieurs outils ou machines. Pour les développeurs qui travaillent régulièrement avec des environnements distants, cette extension se révèle être un gain de temps précieux et une amélioration significative de la productivité.

Autre point, Remote SSH permet de travailler directement sur des machines distantes configurées exactement comme les serveurs de production. Par exemple, si votre application est déployée sur un serveur Linux, mais que vous développez sur un Mac ou Windows, vous pouvez utiliser Remote SSH pour coder et déboguer directement sur un serveur Linux. Cela garantit que votre code fonctionne dans l’environnement de production sans avoir à gérer les différences entre les systèmes d’exploitation.

Les extensions Remote de VsCode

Remote SSH

Cette extension permet de se connecter à un serveur distant via SSH, vous permettant d’éditer et de gérer des fichiers comme si vous étiez localement connecté.

Remote WSL

Remote WSL (Windows Subsystem for Linux) permet aux utilisateurs de Windows de travailler dans un environnement Linux sans quitter VS Code. Cela simplifie le développement pour les environnements où Linux est requis, tout en profitant de l’intégration native avec Windows.

Remote Containers

Cette extension permet d’ouvrir un dossier dans un conteneur Docker, ce qui est idéal pour les développeurs qui souhaitent isoler leur environnement de développement. Remote Containers est abordée plus en détail dans un autre guide dédié à l’utilisation des DevContainers.

Chacune de ces extensions vise à offrir un environnement de développement aussi flexible et puissant que possible, tout en restant dans l’interface familière de Vscode. Ces outils transforment l’expérience de développement en simplifiant la gestion de plusieurs environnements de travail sans nécessiter de configurations complexes ou de multiples outils supplémentaires.

Fonctionnalités de Remote SSH

L’extension Remote SSH de Visual Studio Code offre une série de fonctionnalités puissantes qui facilitent le travail à distance. Voici un aperçu des principales fonctionnalités :

Connexion sécurisée à distance

Remote SSH permet de se connecter à des serveurs distants via SSH directement depuis VS Code. Vous pouvez éditer, déboguer et exécuter du code sur un serveur distant comme si vous étiez localement connecté. L’extension utilise les configurations SSH existantes, vous permettant d’accéder aux serveurs sans avoir à quitter l’interface de VS Code.

Explorateur de fichiers distant

Une fois connecté, vous avez accès à l’intégralité du système de fichiers du serveur distant via l’explorateur de fichiers de VS Code. Vous pouvez ouvrir, modifier, créer et supprimer des fichiers sur le serveur distant, tout en ayant la possibilité de parcourir les répertoires exactement comme sur votre machine locale. Cette fonctionnalité est particulièrement utile pour travailler sur des projets de grande envergure hébergés sur des serveurs distants.

Exécution de commandes à distance

VS Code permet d’exécuter des commandes shell sur le serveur distant directement depuis son terminal intégré. Cela inclut des tâches telles que l’installation de dépendances, la gestion de processus ou l’exécution de scripts. Les résultats s’affichent dans le terminal de VS Code, offrant une expérience fluide sans avoir à utiliser un terminal externe.

Support de l’IntelliSense à distance

L’une des fonctionnalités les plus appréciées de VS Code, IntelliSense, est également disponible lorsque vous travaillez avec Remote SSH. Vous bénéficiez d’une complétion de code intelligente, de la documentation intégrée, et des suggestions de code basées sur le contexte, même lorsque vous travaillez sur un serveur distant. Cela améliore considérablement la productivité et réduit les erreurs de codage.

Débogage à distance

Remote SSH permet de déboguer des applications directement sur le serveur distant. Vous pouvez définir des points d’arrêt, surveiller les variables et exécuter votre code pas à pas, le tout depuis l’interface de VS Code. Le débogage à distance est particulièrement utile pour diagnostiquer des problèmes spécifiques à l’environnement de production.

Configuration et gestion des environnements multiples

L’extension permet de gérer facilement plusieurs environnements distants. Vous pouvez configurer des profils distincts pour chaque serveur, avec des paramètres de connexion spécifiques, ce qui facilite le passage d’un environnement à un autre. Cette fonctionnalité est idéale pour les développeurs qui travaillent sur plusieurs projets hébergés sur différents serveurs.

Redirection de ports

L’une des fonctionnalités avancées de Remote SSH est la redirection de ports, également appelée tunneling SSH. Cette fonctionnalité permet de rediriger les ports du serveur distant vers votre machine locale. Par exemple, si vous exécutez une application web sur un serveur distant qui écoute sur le port 8080, vous pouvez rediriger ce port vers votre machine locale pour y accéder via http://localhost:8080.

Cette redirection est particulièrement utile pour tester des services web hébergés sur des serveurs distants sans avoir besoin d’exposer ces services publiquement sur Internet.

Cas d’usage

L’extension Remote SSH de VS Code offre plusieurs cas d’usage qui simplifient considérablement le développement et la gestion des serveurs distants.

Redirection de ports pour tester des applications web

Lors du développement d’applications web sur un serveur distant, il est souvent nécessaire de tester ces applications dans un navigateur local. Grâce à la redirection de ports via le tunneling SSH, vous pouvez accéder à ces services comme s’ils étaient exécutés sur votre machine locale. Par exemple, si une application web s’exécute sur le port 8080 sur un serveur distant, vous pouvez rediriger ce port vers localhost:8080 sur votre machine locale en utilisant Remote SSH.

Cela vous permet de tester et de déboguer votre application sans avoir à exposer votre serveur de développement sur Internet. Cette méthode est particulièrement utile dans des environnements de développement sécurisés où l’accès direct aux applications via Internet est restreint.

Débogage d’applications sur des environnements proches de la production

Un autre cas d’usage important est le débogage d’applications sur des machines identiques à celles de la production. Dans de nombreux projets, les développeurs travaillent sur des environnements locaux qui diffèrent de l’environnement de production, ce qui peut conduire à des erreurs non détectées avant le déploiement.

Remote SSH permet de travailler directement sur des machines distantes configurées exactement comme les serveurs de production. Par exemple, si votre application est déployée sur un serveur Linux, mais que vous développez sur un Mac ou Windows, vous pouvez utiliser Remote SSH pour coder et déboguer directement sur un serveur Linux. Cela garantit que votre code fonctionne dans l’environnement de production sans avoir à gérer les différences entre les systèmes d’exploitation.

Ce type de débogage est particulièrement précieux lorsque vous devez traquer des bugs spécifiques à un système d’exploitation ou à une configuration logicielle particulière. En travaillant directement sur le même type de machine que celle utilisée en production, vous réduisez les risques d’incompatibilités ou de problèmes qui pourraient surgir après le déploiement.

Collaboration avec des équipes distantes

Dans des équipes où les membres travaillent sur différents sites ou même à domicile, Remote SSH permet à chaque développeur de se connecter à un environnement centralisé pour collaborer sur le même codebase. Plutôt que d’avoir des configurations locales différentes, tous les membres de l’équipe peuvent travailler sur un serveur central via VS Code, assurant ainsi une uniformité des environnements de développement.

Installation et configuration de 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 de Remote SSH dans Visual Studio Code vous ouvre de nouvelles perspectives pour le développement à distance. Vous pouvez désormais travailler directement sur des serveurs distants, déboguer des applications dans des environnements identiques à la production, et rediriger des ports pour tester vos services comme s’ils étaient locaux. Ces fonctionnalités vous permettent non seulement de gagner en efficacité, mais aussi de simplifier la gestion des environnements complexes, surtout lorsque votre machine locale diffère de celle de la production. Vous êtes maintenant équipé pour aborder des projets de développement à distance avec une confiance accrue et une productivité optimisée.