Entwicklung mit Remote-Tunneln
Die Visual Studio Code Remote - Tunnels-Erweiterung ermöglicht es Ihnen, eine Verbindung zu einem Remote-Computer, wie z. B. einem Desktop-PC oder einer virtuellen Maschine (VM), über einen sicheren Tunnel herzustellen. Sie können von einem VS Code-Client aus überall eine Verbindung zu diesem Computer herstellen, ohne SSH zu benötigen.
Tunneling überträgt Daten sicher von einem Netzwerk in ein anderes über Microsoft Dev Tunnels.
Dies kann die Notwendigkeit beseitigen, Quellcode auf Ihrem VS Code-Client-Computer zu haben, da die Erweiterung Befehle und andere Erweiterungen direkt auf dem Remote-Computer ausführt. Die Erweiterung installiert VS Code Server auf dem Remote-Betriebssystem; der Server ist unabhängig von jeder vorhandenen VS Code-Installation auf dem Remote-Betriebssystem.

VS Code kann eine Entwicklungsumgebung in lokaler Qualität bereitstellen – einschließlich vollständiger IntelliSense (Vervollständigungen), Code-Navigation und Debugging – unabhängig davon, wo Ihr Code gehostet wird.
Erste Schritte
Sie haben zwei Wege, um mit Tunneln zu arbeiten
- Führen Sie den Befehl
tunnelder Befehlszeilenschnittstelle (CLI)codeaus. - Aktivieren Sie das Tunneling über die VS Code Desktop-Benutzeroberfläche.
Beide Wege führen zur gleichen Tunneling-Funktionalität – Sie können jedes Tool verwenden, das für Sie am besten geeignet ist. Die CLI ist eine großartige Option, wenn Sie nicht die vollständige VS Code Desktop-Version auf Ihrem Remote-Computer installieren können. Die Verwendung der VS Code Desktop-Benutzeroberfläche ist praktisch, wenn Sie bereits einige Arbeiten in VS Code erledigen und dann das Tunneling für Ihren aktuellen Computer aktivieren möchten.
Wir werden beide Wege in den folgenden Abschnitten beschreiben.
Verwendung der 'code' CLI
Sie können Tunnel über die code CLI erstellen und verwenden.
-
Installieren Sie die
codeCLI auf einem Remote-Computer, mit dem Sie von einem VS Code-Client aus entwickeln möchten. Die CLI stellt eine Verbindung zwischen einem VS Code-Client und Ihrem Remote-Computer her. Die CLI ist automatisch in VS Code Desktop integriert – keine zusätzliche Einrichtung erforderlich.Alternative Downloads
Alternativ können Sie die CLI über eine eigenständige Installation auf unserer Downloadseite beziehen, die von einer VS Code Desktop-Installation getrennt ist.

Sie können die CLI auch über das Terminal Ihres Remote-Computers installieren und entpacken. Dies kann besonders hilfreich sein, wenn Ihr Remote-Computer keine Benutzeroberfläche hat.
curl -Lk 'https://visualstudiocode.de/sha/download?build=stable&os=cli-alpine-x64' --output vscode_cli.tar.gz tar -xf vscode_cli.tar.gzHinweis: Wenn Sie die eigenständige oder Terminal-Installation verwenden, beginnen die Befehle im folgenden Abschnitt mit
./codeanstelle voncode. -
Erstellen Sie einen sicheren Tunnel mit dem Befehl
tunnelcode tunnelDieser Befehl lädt den VS Code Server auf diesem Computer herunter und startet ihn und erstellt dann eine Verbindung zu diesem.
Hinweis: Sie werden aufgefordert, den Lizenzbedingungen des Servers zuzustimmen, wenn Sie zum ersten Mal einen Tunnel auf einem Computer starten. Sie können auch
--accept-server-license-termsin der Befehlszeile übergeben, um die Aufforderung zu vermeiden. -
Diese CLI gibt eine vscode.dev-URL aus, die mit diesem Remote-Computer verknüpft ist, z. B.
https://vscode.dev/tunnel/<machine_name>/<folder_name>. Sie können diese URL auf einem Client Ihrer Wahl öffnen. -
Wenn Sie eine vscode.dev-URL zum ersten Mal auf diesem Client öffnen, werden Sie aufgefordert, sich bei Ihrem GitHub-Konto unter einer URL wie
https://github.com/login/oauth/authorize...anzumelden. Dies authentifiziert Sie beim Tunneling-Dienst, um sicherzustellen, dass Sie Zugriff auf die richtigen Remote-Computer haben.
Verwendung der VS Code-Benutzeroberfläche
-
Öffnen Sie VS Code auf dem Remote-Computer, auf dem Sie den Tunnelzugriff aktivieren möchten.
-
Wählen Sie im VS Code-Konto-Menü die Option Remote Tunnel Access aktivieren, wie in der folgenden Abbildung dargestellt. Sie können auch die Befehlspalette (F1) in VS Code öffnen und den Befehl Remote Tunnels: Remote Tunnel Access aktivieren... ausführen.

-
Sie werden aufgefordert, sich bei GitHub anzumelden. Sobald Sie angemeldet sind, wird ein Tunnel auf Ihrem aktuellen Computer gestartet, und Sie können von überall aus eine Verbindung zu diesem Computer herstellen.

-
In einem Client Ihrer Wahl können Sie den obigen Benachrichtigungslink zu vscode.dev öffnen und mit dem Codieren beginnen!
Hinweis: Der Remote-Computer ist nur erreichbar, solange VS Code dort ausgeführt wird. Sobald Sie VS Code beenden, ist es nicht mehr möglich, eine Verbindung zu ihm herzustellen, bis Sie VS Code dort erneut starten oder den CLI-Befehl
code tunnelausführen.
Remote Tunnels-Erweiterung
Die vscode.dev-Instanzen, die Sie über die code CLI oder die VS Code-Benutzeroberfläche öffnen, werden mit der Remote - Tunnels-Erweiterung vorinstalliert geliefert.
Wenn Sie bereits in VS Code (Desktop oder Web) arbeiten und eine Verbindung zu einem Remote-Tunnel herstellen möchten, können Sie die Remote - Tunnels-Erweiterung direkt installieren und verwenden. Sobald Sie die Erweiterung installiert haben, öffnen Sie die Befehlspalette (F1) und führen Sie den Befehl Remote Tunnels: Verbindung zu Tunnel herstellen aus. Sie können sich dann mit jedem Remote-Computer verbinden, auf dem ein aktiver Tunnel vorhanden ist.
Sie können Ihre Remote-Computer auch im Remote Explorer anzeigen, auf den Sie über den Befehl Remote Explorer: Fokus auf Remote-Ansicht wechseln können.

Ähnlich wie bei den anderen Remote Development-Erweiterungen wird der Name Ihres Remote-Computers im grünen Remote-Indikator unten links aufgeführt. Ein Klick auf diesen Indikator ist eine weitere Möglichkeit, Befehle von Remote Tunnels zu erkunden, zusammen mit Optionen zum Schließen Ihrer Remote-Verbindung oder zur Installation von VS Code Desktop.

Ordner auf einem Remote Tunnels-Host in einem Container öffnen
Sie können die Erweiterungen Remote - Tunnels und Dev Containers zusammen verwenden, um einen Ordner auf Ihrem Remote-Host in einem Container zu öffnen. Sie müssen nicht einmal einen Docker-Client lokal installiert haben.
Um dies zu tun
- Befolgen Sie die Installationsschritte zur Installation von Docker auf Ihrem Remote-Host und von VS Code und der Dev Containers-Erweiterung lokal.
- Befolgen Sie die Erste Schritte-Anweisungen für die Remote - Tunnels-Erweiterung, um einen Tunnel einzurichten, eine Verbindung herzustellen und einen Ordner dort zu öffnen.
- Verwenden Sie den Befehl Dev Containers: In Container neu öffnen aus der Befehlspalette (F1, ⇧⌘P (Windows, Linux Ctrl+Shift+P)).
Der Rest der Dev Containers Schnellstartanleitung gilt unverändert. Sie können mehr über die Dev Containers-Erweiterung in ihrer Dokumentation erfahren. Sie können auch den Artikel Entwickeln auf einem Remote Docker-Host für andere Optionen lesen, falls dieses Modell Ihren Anforderungen nicht entspricht.
Häufig gestellte Fragen
Was ist die Beziehung zwischen Remote Tunnels, VS Code Server und Remote Development?
Visual Studio Code Remote Development ermöglicht es Ihnen, einen Container, einen Remote-Computer oder das Windows Subsystem für Linux (WSL) als vollwertige Entwicklungsumgebung zu nutzen.
Remote Development ermöglicht es Ihrer lokalen VS Code-Installation, transparent mit Quellcode und Laufzeitumgebungen auf anderen Computern (egal ob virtuell oder physisch) zu interagieren, indem die Ausführung bestimmter Befehle auf einen "Remote-Server", den VS Code Server, verlagert wird. Der VS Code Server wird von VS Code schnell installiert, wenn Sie sich mit einem Remote-Endpunkt verbinden, und kann Erweiterungen hosten, die direkt mit dem Remote-Arbeitsbereich, dem Computer und dem Dateisystem interagieren.
Wir haben diese VS Code Server-Backend-Komponente als Dienst veröffentlicht, den Sie selbst ausführen können (mehr dazu in seiner Dokumentation), anstatt dass sie nur von den Remote Development-Erweiterungen installiert und verwaltet wird.
Der Zugriff auf den VS Code Server umfasst einige Komponenten
- Der VS Code Server: Backend-Server, der Remote-Erlebnisse mit VS Code ermöglicht.
- Remote - Tunnels-Erweiterung: Erweiterung, die die Verbindung zum Remote-Computer erleichtert, auf dem eine Instanz des Servers läuft.
Was muss ich als Erweiterungsautor tun?
Die VS Code-Erweiterungs-API abstrahiert lokale/remote Details, sodass die meisten Erweiterungen ohne Änderungen funktionieren. Da Erweiterungen jedoch beliebige Node-Module oder Laufzeiten verwenden können, gibt es Situationen, in denen Anpassungen vorgenommen werden müssen. Wir empfehlen Ihnen, Ihre Erweiterung zu testen, um sicherzustellen, dass keine Aktualisierungen erforderlich sind. Details finden Sie unter Unterstützung der Remote-Entwicklung.
Können mehrere Benutzer oder Clients gleichzeitig auf dieselbe Remote-Instanz zugreifen?
Nein, eine Instanz des Servers ist so konzipiert, dass sie von einem Benutzer oder Client gleichzeitig aufgerufen werden kann.
Wie entferne ich einen Tunnel oder Computer?
Wenn Sie einen über die CLI laufenden Tunnel stoppen möchten, können Sie Strg + C verwenden, um den aktiven Tunnel zu beenden. Wenn Sie das Tunneling über die VS Code-Benutzeroberfläche aktiviert haben, können Sie in VS Code den Befehl Remote Tunnels: Remote Tunnel Access deaktivieren... ausführen.
Sie können die Zuordnung eines Computers zum Tunneling entfernen, indem Sie code tunnel unregister auf diesem Computer ausführen. Sie können auch jeden VS Code-Client öffnen, die Remote Explorer-Ansicht auswählen, mit der rechten Maustaste auf den zu entfernenden Computer klicken und unregister auswählen.
Wie werden Tunnel gesichert?
Sowohl das Hosten als auch das Verbinden mit einem Tunnel erfordern die Authentifizierung mit demselben GitHub- oder Microsoft-Konto auf beiden Seiten. In beiden Fällen stellt VS Code ausgehende Verbindungen zu einem Dienst her, der in Azure gehostet wird; es sind im Allgemeinen keine Firewall-Änderungen erforderlich, und VS Code richtet keine Netzwerk-Listener ein.
Sobald Sie von einer Remote-VS Code-Instanz aus eine Verbindung herstellen, wird eine SSH-Verbindung über den Tunnel aufgebaut, um eine Ende-zu-Ende-Verschlüsselung zu gewährleisten. Der derzeit bevorzugte Cipher für diese Verschlüsselung ist AES 256 im CTR-Modus, und der dafür verantwortliche Code ist Open Source.
Weitere Informationen zur Sicherheit des zugrunde liegenden Dev Tunnels-Dienstes finden Sie in dessen Dokumentation.
Gibt es Nutzungslimits für den Tunneling-Dienst?
Um Missbrauch des zugrunde liegenden Tunneling-Dienstes zu vermeiden, gibt es Nutzungslimits für Ressourcen wie die Anzahl der Tunnel und die Bandbreite. Wir gehen davon aus, dass die meisten Benutzer diese Limits nie erreichen werden.
Zum Beispiel können Sie derzeit 10 Tunnel für Ihr Konto registrieren. Wenn Sie einen neuen Tunnel erstellen möchten und bereits 10 andere registriert haben, wählt die CLI einen zufälligen, ungenutzten Tunnel aus und löscht ihn. Bitte beachten Sie, dass dieses Limit Änderungen unterliegen kann.
Kann ich Richtlinien in meiner gesamten Organisation konfigurieren?
Wenn Sie Teil einer Organisation sind, die den Zugriff auf die Portweiterleitung kontrollieren möchte, können Sie dies tun, indem Sie den Zugriff auf die Domäne global.rel.tunnels.api.visualstudio.com zulassen oder verweigern.
Für Benutzer von Windows-Geräten können Sie auch Gruppenrichtlinieneinstellungen für Dev Tunnels konfigurieren und bereitstellen. Weitere Informationen finden Sie in der Dev Tunnels-Dokumentation.
Wie kann ich sicherstellen, dass mein Tunnel läuft?
Sie haben mehrere Optionen
- Verwenden Sie den Befehl
service, um als Dienst auszuführen. Sie könnencode tunnel service installundcode tunnel service uninstallausführen, um diese zu installieren und zu deinstallieren. - Verwenden Sie die Option
no-sleep,code tunnel --no-sleep, um zu verhindern, dass Ihr Remote-Computer in den Ruhezustand wechselt.
Wie im code CLI-Dok erwähnt, können Sie alle möglichen CLI-Befehle und Optionen über code tunnel --help erkunden.
Kann ich andere Remote Development-Erweiterungen oder einen Dev-Container verwenden, während ich tunnel?
Ja! Derzeit können Sie über Remote - Tunnels eine Verbindung zu WSL und Dev-Containern herstellen.