Befehlszeilenreferenz für Dev-Tunnel
Dev-Tunnel bieten ein Befehlszeilenschnittstellentool (CLI) zum Erstellen und Verwalten von Entwicklungstunneln. In diesem Artikel werden die Syntax und Die Parameter für die verschiedenen devtunnel
CLI-Befehle erläutert.
Wichtig
Dieses Feature ist zurzeit als öffentliche Preview verfügbar. Diese Vorschauversion wird ohne Vereinbarung zum Servicelevel bereitgestellt und ist nicht für Produktionsworkloads vorgesehen. Manche Features werden möglicherweise nicht unterstützt oder sind nur eingeschränkt verwendbar.
Hinweis
devtunnel
CLI-Befehle befinden sich in der Vorschau. Befehlsnamen und Optionen können sich in zukünftigen Versionen ändern.
Globale Optionen
-v, --verbose
: Ausführliche Ausgabe aktivieren.-?, -h, --help
: Zeigen Sie Hilfe- und Nutzungsinformationen an.
Verwalten von Benutzeranmeldeinformationen
Der Dev-Tunneldienst erfordert eine Anmeldung zur Autorisierung der Verwaltung und des Zugriffs auf Entwicklertunnel. Standardmäßig kann nur auf einen Entwicklertunnel zugegriffen werden, der den Entwicklungstunnel erstellt hat. Dieser Benutzer kann jedoch anderen Benutzern Zugriff gewähren.
Nach der Anmeldung wird das Anmeldetoken in der sicheren Schlüsselkette des Systems zwischengespeichert und ist mehrere Tage vor Ablauf gültig. Wenn Sie sich von der CLI abmelden, wird dieses zwischengespeicherte Token gelöscht, aber keine Browsercookies gelöscht. Dies kann Dev-Tunnel-Zugriffstoken enthalten, wenn ein Browser für die Authentifizierung mit einem Dev-Tunnel verwendet wurde.
Befehl | Beschreibung |
---|---|
devtunnel user login |
Melden Sie sich mit einem Microsoft- oder GitHub-Konto an. |
devtunnel user logout |
Löschen des zwischengespeicherten Tokens |
devtunnel user show |
Aktuellen Anmeldestatus anzeigen |
Tipp
devtunnel login
und devtunnel logout
sind Kurzbefehle zum Anmelden und Abmelden.
Hier sind einige Beispiele für die Verwendung dieser Befehle:
Beispiele | Beschreibung |
---|---|
devtunnel user login |
Melden Sie sich mit einer Microsoft-Organisation (Microsoft Entra-ID) oder persönliches Konto |
devtunnel user login -g |
Anmelden mit einem GitHub-Konto |
devtunnel user login -d |
Melden Sie sich mit einem GitHub-Konto mit Gerätecodeanmeldung an, wenn die lokale interaktive Browseranmeldung nicht möglich ist. |
devtunnel user login -g -d |
Melden Sie sich mit einem GitHub-Konto mit Gerätecodeanmeldung an, wenn die lokale interaktive Browseranmeldung nicht möglich ist. |
Hosten eines Entwicklungstunnels
devtunnel host
ist der befehl Standard, der zum Hosten Ihres Entwicklungstunnels verwendet wird. Der Befehl sollte auf dem Hostsystem ausgeführt werden, auf dem der Server ausgeführt wird, auf den Sie über den Dev-Tunnel zugreifen möchten.
Befehl | Beschreibung |
---|---|
devtunnel host |
Hosten eines Entwicklungstunnels. Wenn keine Dev-Tunnel-ID angegeben ist, wird ein neuer temporärer Entwicklungstunnel erstellt, der gelöscht wird, nachdem die Verbindung geschlossen wurde. |
Hier sind einige Beispiele für die Verwendung dieses Befehls:
Beispiele | Beschreibung |
---|---|
devtunnel host -p 3000 |
Hosten Sie einen temporären Entwicklungstunnel für einen Server, der Port 3000 überwacht, auf dem Hostsystem. |
devtunnel host -p 3000 --allow-anonymous |
Hosten Sie einen temporären Entwicklungstunnel, und aktivieren Sie anonymen Clientzugriff. |
devtunnel host -p 3000 5000 |
Hosten Sie einen temporären Entwicklungstunnel für lokale Server, die auf ports 3000 und 5000 lauschen. |
devtunnel host -p 8443 --protocol https |
Hosten Sie einen temporären Entwicklungstunnel für einen Server, der auf Port 8443 lauscht, der das HTTPS-Protokoll verwendet. |
devtunnel host -p 8000 --expiration 2d |
Hosten Sie einen temporären Entwicklungstunnel mit einer benutzerdefinierten Ablaufzeit. Mindestens 1 Stunde (1h) und das Maximum beträgt 30 Tage (30d). |
devtunnel host TUNNELID |
Hosten Sie einen vorhandenen Entwicklungstunnel, der zuvor konfiguriert wurde. |
Warnung
Der anonyme Zugriff auf einen Entwicklungstunnel bedeutet, dass jeder im Internet eine Verbindung mit Ihrem lokalen Server herstellen kann, wenn er die Dev-Tunnel-ID erraten kann.
Drücken Sie CTRL-C , um den Entwicklungstunnelhostprozess zu beenden und alle Clientverbindungen über den Dev-Tunnel zu beenden. Wenn kein vorhandener Entwicklungstunnel bereitgestellt wurde, wird der vom Prozess automatisch erstellte Entwicklungstunnel beim Beenden des Prozesses gelöscht.
Verbinden zu einem Entwicklungstunnel
Verwenden der Webweiterleitungs-UI:
Der devtunnel host
Befehl zeigt die Ausgabe ähnlich der folgenden:
Hosting port 3000 at https://l3rs99qw-3000.usw2.devtunnels.ms/
Der angezeigte https:
URI ist für den Dev-Tunnelport eindeutig: Die erste Komponente ist ein Unterdo Standard mit der angegebenen Dev-Tunnel-ID und Portnummer.
Wenn der gehostete Port eine Verbindung mit einem Webserver herstellt, kann dieser URI von praktisch überall aus direkt in einem Browser geöffnet werden. Wenn der Zugriff auf den Dev-Tunnel eine Autorisierung erfordert, leitet die anfängliche Anforderung an den URI zu einer Anmeldeseite um und kehrt nach der Autorisierung des Benutzers zur Website zurück.
Wenn der gehostete Port eine Verbindung mit einem Webdienst herstellt, kann dieser URI von einer Webdienstclientanwendung als Basis-URI verwendet werden. Wenn der Dev-Tunnel jedoch keinen anonymen Zugriff zulässt, weiß der Webdienstclient normalerweise nicht, wie man sich authentifiziert. Wenn der Webdienst öffentlich zugänglich gemacht werden kann, erwägen Sie, anonymen Zugriff zuzulassen. Andernfalls kann ein Webdienstclient einen Anforderungsheader mit einem Dev-Tunnel-Zugriffstoken hinzufügen, um die Verbindung zu autorisieren.
Verwenden der CLI:
Anstatt einen Clientbrowser oder eine Anwendung direkt mit einem Dev-Tunnelrelay-URI zu verbinden, kann die CLI verwendet werden, um Verbindungen von einem Port auf dem Client an einen Dev-Tunnelport weiterzuleiten. Der Client muss sich möglicherweise auch anmelden, wenn der Dev-Tunnel keinen anonymen Zugriff zulässt.
devtunnel connect TUNNELID
- Ersetzen Sie durch
TUNNELID
dieselbe Dev-Tunnel-ID, die auf dem Host verwendet wurde.
Die erfolgreiche Clientausgabe ähnelt folgendem:
Connected to tunnel: l3rs99qw
SSH: Forwarding from 127.0.0.1:3000 to host port 3000.
SSH: Forwarding from [::1]:3000 to host port 3000.
Jetzt ist der Server, der auf dem Port 3000 des Hosts freigegeben wurde, auf localhost:3000
dem Client verfügbar, entweder mit IPv4 oder IPv6. (Das Präfix "SSH" liegt daran, dass der Dev-Tunneldienst auf dem standardmäßigen SSH-Protokoll für die Portweiterleitung aufbaut.) Wenn der gehostete Port eine Verbindung mit einem Webserver herstellt, kann er http://localhost:3000/
in einem Browser geöffnet werden. In diesem Fall ist keine weitere Autorisierung erforderlich, da das CLI-Anmeldetoken des Clients verwendet wurde, um die Verbindung bei Bedarf zu autorisieren.
Erweitert: Verwalten von Entwicklungstunneln
Es ist möglich, einen Entwicklungstunnel zu erstellen, ohne ihn noch zu hosten. Dies ist nützlich für die erweiterte Konfiguration und Verwaltung von Entwicklungstunneln, z. B.:
- Auflisten aller eigenen Dev-Tunnel
- Hinzufügen und Entfernen von Ports eines Dev-Tunnels
- Verwalten von Zugriffssteuerungen für Dev-Tunnel
- Hinzufügen von Metadaten zu einem Entwicklungstunnel wie Beschreibung und Tags
Befehl | Beschreibung |
---|---|
devtunnel create |
Erstellen eines beständigen Entwicklungstunnels |
devtunnel list |
Auflisten von Entwicklungstunneln |
devtunnel show |
Details zum Dev-Tunnel anzeigen |
devtunnel update |
Aktualisieren von Entwicklungstunneleigenschaften |
devtunnel delete |
Löschen eines Entwicklungstunnels |
devtunnel delete-all |
Löschen aller Entwicklungstunnel |
Hier sind einige Beispiele für die Verwendung dieser Befehle:
Beispiele | Beschreibung |
---|---|
devtunnel create -a |
Erstellen Sie einen beständigen Entwicklungstunnel, der anonymen Zugriff zulässt. |
devtunnel create -d 'my tunnel description' |
Erstellen Sie einen persistenten Entwicklungstunnel mit einer nicht durchsuchbaren Beschreibung. |
devtunnel create --expiration 4h |
Erstellen Sie einen beständigen Entwicklungstunnel mit einer benutzerdefinierten Ablaufzeit. Mindestens 1 Stunde (1h) und das Maximum beträgt 30 Tage (30d). |
devtunnel create myTunnelID |
Erstellen Sie einen beständigen Entwicklungstunnel mit einer benutzerdefinierten Tunnel-ID. |
devtunnel create --tags my-web-app v1 |
Erstellen Sie einen persistenten Entwicklungstunnel, und wenden Sie durchsuchbare Tags an. |
devtunnel list --tags my-web-app |
Auflisten von Entwicklungstunneln mit einem der angegebenen Tags. |
devtunnel list --all-tags my-web-app v1 |
Auflisten von Entwicklungstunneln mit allen angegebenen Tags. |
devtunnel show |
Zeigen Sie Details zum zuletzt verwendeten Dev-Tunnel an. |
devtunnel show TUNNELID |
Details für einen Dev-Tunnel anzeigen. |
devtunnel update TUNNELID -d 'my new tunnel description' |
Aktualisieren Sie die Beschreibung eines Entwicklungstunnels. |
devtunnel update TUNNELID --remove-tags |
Entfernen Sie alle Tags aus einem Dev-Tunnel. |
devtunnel update TUNNELID --expiration 10d |
Aktualisieren Sie einen Dev-Tunnel mit einer neuen benutzerdefinierten Ablaufzeit. Mindestens 1 Stunde (1h) und das Maximum beträgt 30 Tage (30d). |
devtunnel delete TUNNELID |
Löschen eines Entwicklungstunnels. |
devtunnel delete-all |
Löschen Sie alle Ihre Entwicklungstunnel. |
Tipp
Die meisten CLI-Befehle funktionieren implizit auf dem zuletzt verwendeten Dev-Tunnel, obwohl bei Bedarf eine Dev-Tunnel-ID angegeben werden kann.
Erweitert: Verwalten von Dev-Tunnelports
Ein mit dem devtunnel create
Befehl erstelltes Entwicklungstunnel verfügt anfänglich über keine Ports. Verwenden Sie devtunnel port
Befehle zum Hinzufügen von Ports vor dem Hosting:
Befehl | Beschreibung |
---|---|
devtunnel port create |
Erstellen eines Entwicklungstunnelports |
devtunnel port list |
Auflisten von Dev-Tunnelports |
devtunnel port show |
Details zum Dev-Tunnel-Port anzeigen |
devtunnel port update |
Aktualisieren der Porteigenschaften des Dev-Tunnels |
devtunnel port delete |
Löschen eines Entwicklungstunnelports |
Beispiele | Beschreibung |
---|---|
devtunnel port create -p 3000 --protocol http |
Hinzufügen eines Ports mit dem angegebenen Protokoll |
devtunnel port list TUNNELID |
Aktuelle Ports auflisten |
devtunnel port show TUNNELID -p 3000 |
Details für Port 3000 anzeigen |
devtunnel port update -p 3000 --description 'frontend port' |
Aktualisieren einer Beschreibung des Dev-Tunnel-Ports |
devtunnel port delete -p 3000 |
Löschen eines Ports |
Beim Erstellen eines Ports kann das Protokoll optional angegeben werden, wenn die automatische Erkennung nicht ordnungsgemäß funktioniert. Aktuelle Optionen sind "http", "https" oder "auto" (Standard). Wenn der gehostete Port HTTPS ist, wird empfohlen, das Portprotokoll auf "https" festzulegen; andernfalls ist "auto" wahrscheinlich in Ordnung.
Starten Sie nach dem Konfigurieren eines Dev-Tunnels mit den oben genannten Befehlen mit dem Hosten:
devtunnel host
Erweitert: Verwalten des Dev-Tunnelzugriffs
Mit den folgenden Befehlen können Zugriffstoken für Dev-Tunnel ausgegeben werden, um anderen Clients Zugriff auf Ihren Dev-Tunnel zu ermöglichen, ohne anonymen Zugriff zuzulassen. Mit den Zugriffssteuerungsbefehlen können Sie die Zugriffssteuerung für Entwicklungstunnel und Dev-Tunnelports konfigurieren.
Befehl | Beschreibung |
---|---|
devtunnel token |
Problem des Dev-Tunnel-Zugriffstokens |
devtunnel access create |
Erstellen eines Zugriffssteuerungseintrags |
devtunnel access list |
Auflisten von Zugriffssteuerungseinträgen |
devtunnel access delete |
Löschen eines Zugriffssteuerungseintrags |
devtunnel access reset |
Zurücksetzen von Zugriffssteuerungseinträgen auf Standardeinstellungen |
Hier sind einige Beispiele für die Verwendung dieser Befehle:
Beispiele | Beschreibung |
---|---|
devtunnel token TUNNELID --scopes connect |
Rufen Sie ein "Connect"-Zugriffstoken für einen Entwicklungstunnel ab, der freigegeben werden kann, um vorübergehenden Zugriff auf den Dev-Tunnel zu ermöglichen. |
devtunnel access create TUNNELID --anonymous |
Aktivieren Sie den anonymen Clientzugriff im Dev-Tunnel. |
devtunnel access create TUNNELID --anonymous --expiration 4h |
Aktivieren Sie den anonymen Clientzugriff auf den Dev-Tunnel mit einer benutzerdefinierten Ablaufzeit für die Zugriffssteuerung. Mindestens 1 Stunde (1h) und das Maximum beträgt 30 Tage (30d). |
devtunnel access create TUNNELID --port 3000 --anonymous |
Aktivieren sie den anonymen Clientzugriff auf Port 3000. |
devtunnel access create TUNNELID --tenant |
Aktivieren Sie den aktuellen Microsoft Entra-Mandantenzugriff auf den Dev-Tunnel. |
devtunnel access create TUNNELID --org ORG |
Aktivieren Sie den Zugriff auf eine GitHub-Organisation anhand des Namens im Dev-Tunnel. |
Tipp
Der Zugriff der GitHub-Organisation erfordert die Installation der GitHub-App Dev Tunnels in der Organisation.
Zusätzliche Befehle
Diese Befehle können verwendet werden, wenn Sie diesen lokalen Cache des zuletzt verwendeten Dev-Tunnels explizit festlegen oder aufheben müssen.
Befehl | Beschreibung |
---|---|
devtunnel set |
Festlegen des Standard-Entwicklungstunnels |
devtunnel unset |
Löschen des Standard-Dev-Tunnels |
Diagnosebefehle
Befehl | Beschreibung |
---|---|
devtunnel clusters |
Auflisten der verfügbaren Dienstcluster nach Standort |
devtunnel echo |
Ausführen eines Diagnose-Echoservers auf einem lokalen Port |
devtunnel ping |
Senden von Diagnosenachrichten an einen Remote-Echoserver |
Beispiele | Beschreibung |
---|---|
devtunnel clusters --ping |
Liste der verfügbaren Dienstcluster nach gemessener Latenz sortiert auf. |
devtunnel echo http --port 8080 --interface 127.0.0.1 |
Starten Sie einen lokalen HTTP-Diagnoseserver auf Port 8080. |
Problembehandlung
Um Probleme mit der devtunnel
CLI zu beheben, können die folgenden Tipps hilfreich sein:
- Stellen Sie sicher, dass Sie die neueste Version der
devtunnel
CLI verwenden. Überprüfen Sie die aktuell installierte Version mitdevtunnel --version
. - Die
--verbose
Option druckt Debuggingnachrichten, die zusätzliche Diagnoseinformationen bereitstellen können.