Aracılığıyla paylaş


Geliştirme tünelleri komut satırı başvurusu

Geliştirme tünelleri, geliştirme tünelleri oluşturmak ve yönetmek için bir komut satırı arabirimi (CLI) aracı sunar. Bu makalede, çeşitli devtunnel CLI komutlarının söz dizimi ve parametreleri açıklanmaktadır.

Önemli

Bu özellik şu anda genel önizlemededir. Bu önizleme sürümü hizmet düzeyi sözleşmesi olmadan sağlanır ve üretim iş yükleri için önerilmez. Bazı özellikler desteklenmiyor olabileceği gibi özellikleri sınırlandırılmış da olabilir.

Dekont

devtunnel CLI komutları önizleme aşamasındadır. Komut adları ve seçenekleri gelecek sürümlerde değişebilir.

Genel seçenekler

  • -v, --verbose: Ayrıntılı çıkışı etkinleştirin.
  • -?, -h, --help: Yardım ve kullanım bilgilerini gösterin.

Kullanıcı kimlik bilgilerini yönetme

Geliştirme tüneli hizmeti, geliştirme tünellerinin yönetimi ve erişimi için oturum açmayı gerektirir. Varsayılan olarak geliştirme tüneline yalnızca geliştirme tünelini oluşturan kullanıcı erişebilir, ancak bu kullanıcı başkalarına erişim izni verebilir.

Oturum açtıktan sonra oturum açma belirteci sistem güvenli anahtar zincirinde önbelleğe alınır ve süre dolmadan birkaç gün önce geçerlidir. CLI oturumu kapatılırken bu önbelleğe alınmış belirteç temizlenmiş olur, ancak tarayıcı tanımlama bilgilerini temizlemez. Geliştirme tüneliyle kimlik doğrulaması yapmak için bir tarayıcı kullanıldıysa, geliştirme tüneli erişim belirteçlerini içerebilir.

Komut Açıklama
devtunnel user login Microsoft veya GitHub hesabıyla oturum açın.
devtunnel user logout Önbelleğe alınan belirteci temizleme
devtunnel user show Geçerli oturum açma durumunu göster

Bahşiş

devtunnel login ve devtunnel logout oturum açıp kapatmaya yönelik kısa komutlardır.

Bu komutların kullanımıyla ilgili bazı örnekler aşağıda verilmiştir:

Örnekler Açıklama
devtunnel user login Microsoft kuruluşunda (Microsoft Entra Id) veya kişisel hesapla oturum açma
devtunnel user login -g GitHub hesabıyla oturum açma
devtunnel user login -d Yerel etkileşimli tarayıcı oturum açma mümkün değilse cihaz koduyla oturum açma ile GitHub hesabıyla oturum açın
devtunnel user login -g -d Yerel etkileşimli tarayıcı oturum açma mümkün değilse cihaz koduyla oturum açma ile GitHub hesabıyla oturum açın

Geliştirme tüneli barındırma

devtunnel host , geliştirme tünelinizi barındırmak için kullanılan ana komutdur. Komut, geliştirme tüneli üzerinden erişilebilir olmasını istediğiniz sunucuyu çalıştıran konak sisteminde çalıştırılmalıdır.

Komut Açıklama
devtunnel host Bir geliştirme tüneli barındır. Geliştirme tüneli kimliği belirtilmezse, bağlantı kapatıldıktan sonra silinen yeni bir geçici geliştirme tüneli oluşturulur.

Bu komutun kullanımıyla ilgili bazı örnekler aşağıda verilmiştir:

Örnekler Açıklama
devtunnel host -p 3000 Konak sisteminde 3000 numaralı bağlantı noktasını dinleyen bir sunucu için geçici bir geliştirme tüneli barındırın.
devtunnel host -p 3000 --allow-anonymous Geçici bir geliştirme tüneli barındırıp anonim istemci erişimini etkinleştirin.
devtunnel host -p 3000 5000 3000 ve 5000 bağlantı noktalarını dinleyen yerel sunucular için geçici bir geliştirme tüneli barındır.
devtunnel host -p 8443 --protocol https HTTPS protokolunu kullanan 8443 numaralı bağlantı noktasında dinleyen bir sunucu için geçici bir geliştirme tüneli barındırın.
devtunnel host -p 8000 --expiration 2d Özel süre sonu süresiyle geçici bir geliştirme tüneli barındırın. En az 1 saat (1 saat) ve maksimum 30 gündür (30d).
devtunnel host TUNNELID Daha önce yapılandırılmış olan mevcut bir geliştirme tüneli barındır.

Uyarı

Geliştirme tüneline anonim erişime izin vermek, geliştirme tüneli kimliğini tahmin edebiliyorsa internet üzerindeki herkesin yerel sunucunuza bağlanabileceği anlamına gelir.

Geliştirme tüneli ana bilgisayar işlemini durdurmak ve geliştirme tüneli aracılığıyla tüm istemci bağlantılarını sonlandırmak için Control-C tuşlarına basın. Mevcut bir geliştirme tüneli sağlanmadıysa, işlem tarafından otomatik olarak oluşturulan geliştirme tüneli işlem çıkışında silinir.

Geliştirme tüneline Bağlan

Web iletme kullanıcı arabirimini kullanma:

Komutu aşağıdakine devtunnel host benzer bir çıktı gösterir:

Hosting port 3000 at https://l3rs99qw-3000.usw2.devtunnels.ms/

Görüntülenen https: URI, geliştirme tüneli bağlantı noktası için benzersizdir: ilk bileşen, verilen geliştirme tüneli kimliğini ve bağlantı noktası numarasını içeren bir alt etki alanıdır.

Barındırılan bağlantı noktası bir web sunucusuna bağlanıyorsa, bu URI doğrudan bir tarayıcıda, her yerden açılabilir. Geliştirme tüneline erişim yetkilendirme gerektiriyorsa, URI'ye yönelik ilk istek bir oturum açma sayfasına yeniden yönlendirilir ve kullanıcı yetkilendirildikten sonra siteye döner.

Barındırılan bağlantı noktası bir web hizmetine bağlanıyorsa, bu URI bir web hizmeti istemci uygulaması tarafından temel URI olarak kullanılabilir. Ancak geliştirme tüneli anonim erişime izin vermiyorsa web hizmeti istemcisi normalde kimlik doğrulamasını bilmez. Web hizmetinin genel kullanıma açık olması güvenliyse anonim erişime izin vermeyi göz önünde bulundurun. Aksi takdirde, web hizmeti istemcisi bağlantıyı yetkilendirmek için geliştirme tüneli erişim belirtecine sahip bir istek üst bilgisi ekleyebilir.

CLI'yi kullanma:

CLI, istemci tarayıcısının veya uygulamanın doğrudan bir geliştirme tüneli geçiş URI'sine bağlanması yerine, istemcideki bir bağlantı noktasından geliştirme tüneli bağlantı noktasına bağlantıları iletmek için kullanılabilir. Geliştirme tüneli anonim erişime izin vermiyorsa istemcinin de oturum açması gerekebilir.

devtunnel connect TUNNELID
  • değerini konakta kullanılan geliştirme tüneli kimliğiyle değiştirin TUNNELID .

Başarılı istemci çıkışı aşağıdakine benzer:

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.

Artık ana bilgisayarın bağlantı noktası 3000'de localhost:3000 paylaşılan sunucu, istemcide IPv4 veya IPv6 kullanılarak kullanılabilir. ("SSH" ön ekinin nedeni, geliştirme tüneli hizmetinin bağlantı noktası iletme için standart SSH protokolü üzerinde derlenmesidir.) Barındırılan bağlantı noktası bir web sunucusuna bağlanıyorsa tarayıcıda http://localhost:3000/ açılabilir. Bu durumda, gerekirse bağlantıyı yetkilendirmek için istemcinin CLI oturum açma belirteci kullanıldığından başka yetkilendirme gerekmez.

Gelişmiş: Geliştirme tünellerini yönetme

Henüz barındırmadan bir geliştirme tüneli oluşturmak mümkündür. Bu, aşağıdakiler gibi gelişmiş geliştirme tüneli yapılandırması ve yönetimi için kullanışlıdır:

  • Sahip olunan tüm geliştirme tünellerini listeleme
  • Geliştirme tünelinin bağlantı noktalarını ekleme ve kaldırma
  • Geliştirme tüneli erişim denetimlerini yönetme
  • Geliştirme tüneline açıklama ve etiketler gibi meta veriler ekleme
Komut Açıklama
devtunnel create Kalıcı geliştirme tüneli oluşturma
devtunnel list Geliştirme tünellerini listeleme
devtunnel show Geliştirme tüneli ayrıntılarını göster
devtunnel update Geliştirme tüneli özelliklerini güncelleştirme
devtunnel delete Geliştirme tünellerini silme
devtunnel delete-all Tüm geliştirme tünellerini silme

Bu komutların kullanımıyla ilgili bazı örnekler aşağıda verilmiştir:

Örnekler Açıklama
devtunnel create -a Anonim erişime izin veren kalıcı bir geliştirme tüneli oluşturun.
devtunnel create -d 'my tunnel description' Aranamayan bir açıklamayla kalıcı bir geliştirme tüneli oluşturun.
devtunnel create --expiration 4h Özel süre sonu süresine sahip kalıcı bir geliştirme tüneli oluşturun. En az 1 saat (1 saat) ve maksimum 30 gündür (30d).
devtunnel create myTunnelID Özel tünel kimliğine sahip kalıcı bir geliştirme tüneli oluşturun.
devtunnel create --tags my-web-app v1 Kalıcı bir geliştirme tüneli oluşturun ve aranabilir etiketler uygulayın.
devtunnel list --tags my-web-app Belirtilen etiketlerden herhangi birine sahip geliştirme tünellerini listeleyin.
devtunnel list --all-tags my-web-app v1 Belirtilen tüm etiketlere sahip geliştirme tünellerini listeleyin.
devtunnel show Son kullanılan geliştirme tünelinin ayrıntılarını gösterin.
devtunnel show TUNNELID Geliştirme tünelinin ayrıntılarını gösterir.
devtunnel update TUNNELID -d 'my new tunnel description' Geliştirme tünelinin açıklamasını güncelleştirin.
devtunnel update TUNNELID --remove-tags Geliştirme tünelinden tüm etiketleri kaldırma.
devtunnel update TUNNELID --expiration 10d Geliştirme tünellerini yeni bir özel süre sonu süresiyle güncelleştirin. En az 1 saat (1 saat) ve maksimum 30 gündür (30d).
devtunnel delete TUNNELID Geliştirme tünellerini silin.
devtunnel delete-all Tüm geliştirme tünellerinizi silin.

Bahşiş

Çoğu CLI komutu son kullanılan geliştirme tüneli üzerinde örtük olarak çalışır, ancak gerekirse geliştirme tüneli kimliği belirtme seçeneği vardır.

Gelişmiş: Geliştirme tüneli bağlantı noktalarını yönetme

komutu kullanılarak oluşturulan geliştirme tünelinde devtunnel create başlangıçta bağlantı noktası yoktur. Barındırmadan önce bağlantı noktası eklemek için komutları kullanın devtunnel port :

Komut Açıklama
devtunnel port create Geliştirme tüneli bağlantı noktası oluşturma
devtunnel port list Geliştirme tüneli bağlantı noktalarını listeleme
devtunnel port show Geliştirme tüneli bağlantı noktası ayrıntılarını göster
devtunnel port update Geliştirme tüneli bağlantı noktası özelliklerini güncelleştirme
devtunnel port delete Geliştirme tüneli bağlantı noktasını silme
Örnekler Açıklama
devtunnel port create -p 3000 --protocol http Belirtilen protokole sahip bir bağlantı noktası ekleme
devtunnel port list TUNNELID Geçerli bağlantı noktalarını listeleme
devtunnel port show TUNNELID -p 3000 3000 numaralı bağlantı noktasının ayrıntılarını gösterme
devtunnel port update -p 3000 --description 'frontend port' Geliştirme tüneli bağlantı noktası açıklamasını güncelleştirme
devtunnel port delete -p 3000 Bağlantı noktasını silme

Bağlantı noktası oluştururken, otomatik algılama düzgün çalışmazsa protokol isteğe bağlı olarak belirtilebilir. Geçerli seçenekler "http", "https" veya "otomatik" (varsayılan) seçenekleridir. Barındırılan bağlantı noktası HTTPS ise, bağlantı noktası protokolunun "https" olarak ayarlanması önerilir; aksi takdirde "otomatik" büyük olasılıkla iyidir.

Yukarıdaki komutları kullanarak bir geliştirme tüneli yapılandırdıktan sonra barındırmaya başlayın:

devtunnel host

Gelişmiş: Geliştirme tüneli erişimini yönetme

Aşağıdaki komutlarla, diğer istemcilerin anonim erişime izin vermeden geliştirme tünelinize erişmesini sağlamak için geliştirme tüneli erişim belirteçleri oluşturulabilir. Erişim denetimi giriş komutları, geliştirme tünellerinde ve geliştirme tüneli bağlantı noktalarında erişim denetimini yapılandırmanıza olanak sağlar.

Komut Açıklama
devtunnel token Geliştirme tüneli erişim belirteci verme
devtunnel access create Erişim denetimi girdisi oluşturma
devtunnel access list Erişim denetimi girdilerini listeleme
devtunnel access delete Erişim denetimi girdisi silme
devtunnel access reset Erişim denetimi girdilerini varsayılana sıfırlama

Bu komutların kullanımıyla ilgili bazı örnekler aşağıda verilmiştir:

Örnekler Açıklama
devtunnel token TUNNELID --scopes connect Geliştirme tüneline geçici olarak erişim sağlamak üzere paylaşılabilen bir geliştirme tüneli için 'bağlan' erişim belirteci alın.
devtunnel access create TUNNELID --anonymous Geliştirme tünelinde anonim istemci erişimini etkinleştirin.
devtunnel access create TUNNELID --anonymous --expiration 4h Özel erişim denetimi süre sonu süresiyle geliştirme tünelinde anonim istemci erişimini etkinleştirin. En az 1 saat (1 saat) ve maksimum 30 gündür (30d).
devtunnel access create TUNNELID --port 3000 --anonymous 3000 numaralı bağlantı noktasında anonim istemci erişimini etkinleştirin.
devtunnel access create TUNNELID --tenant Geliştirme tünelinde geçerli Microsoft Entra kiracı erişimini etkinleştirin.
devtunnel access create TUNNELID --org ORG GitHub kuruluş erişimini geliştirme tünelinde ada göre etkinleştirin.

Bahşiş

GitHub kuruluş erişimi için Dev Tunnels GitHub uygulamasının kuruluşa yüklenmesi gerekir.

Ek komutlar

Son kullanılan geliştirme tünelinin bu yerel önbelleğini açıkça ayarlamanız veya kaldırmanız gerekiyorsa bu komutlar kullanılabilir.

Komut Açıklama
devtunnel set Varsayılan geliştirme tünelini ayarlama
devtunnel unset Varsayılan geliştirme tünellerini temizle

Tanılama komutları

Komut Açıklama
devtunnel clusters Kullanılabilir hizmet kümelerini konuma göre listeleme
devtunnel echo Yerel bağlantı noktasında tanılama yankı sunucusu çalıştırma
devtunnel ping Uzak yankı sunucusuna tanılama iletileri gönderme
Örnekler Açıklama
devtunnel clusters --ping Ölçülen gecikme süresine göre sıralanmış kullanılabilir hizmet kümelerini listeleyin.
devtunnel echo http --port 8080 --interface 127.0.0.1 8080 numaralı bağlantı noktasında yerel bir http tanılama sunucusu başlatın.

Sorun giderme

CLI ile devtunnel ilgili sorunları gidermek için aşağıdaki ipuçları yararlı olabilir:

  • CLI'nın en son sürümünde olduğunuzdan devtunnel emin olun. şu anda yüklü olan sürümü ile devtunnel --versiondenetleyin.
  • seçeneği --verbose , ek tanılama bilgileri sağlayabilecek hata ayıklama iletilerini yazdırır.