Core Tools kullanarak Azure İşlevleri’ni yerel olarak oluşturma ve çalıştırma

Tamamlandı

Azure Functions Core Tools, yerel bilgisayarınızda komut satırından işlev geliştirip çalıştırmanıza olanak tanır.

Azure portalının işlev düzenleyicisinde değil kendi bilgisayarınızda yerel olarak basit bir ilgi alanı hesaplayıcısı olan ilk işlevinizi oluşturmak istiyorsunuz. Visual Studio veya Visual Studio Code gibi bir geliştirme ortamı kullanmak isteyip istemediğinizden emin değilsiniz; her ikisi de doğrudan Azure İşlevleri destekleyecek şekilde genişletilebilir. Sonuç olarak, komut satırından Temel Araçlar'ı ve temel bir metin düzenleyicisini kullanmaya karar verirsiniz.

Bu ünitede, işlevleri yerel olarak oluşturmak ve çalıştırmak için Core Tools'u kullanmayı öğreneceksiniz. Bir sonraki ünitede, Azure Cloud Shell'i kullanarak bu kavramlarda size yol gösteren alıştırmada bunları kullanmadan önce Temel Araçlar hakkında daha fazla bilgi edinelim.

Azure İşlevleri Core Tools nedir?

Azure İşlevleri Temel Araçları, yerel bilgisayarınızdan işlev kodu geliştirmek, çalıştırmak ve dağıtmak için kullanabileceğiniz bir dizi komut satırı aracının yanı sıra tek başına bir çalışma zamanıdır.

Temel Araçlar, aşağıdakiler dahil olmak üzere işlevlerle ilgili çeşitli özellikleri destekler:

  • İşlevleri yerel olarak geliştirmek için ihtiyacınız olan dosya ve klasörleri oluşturun.
  • Bilgisayarınızda işlevleri test edebilmeniz ve hatalarını ayıklayabilmek için yerel bir çalışma zamanı sağlayın.
  • İşlevlerinizi Azure'da yayımlayın.

Çekirdek Araçları'nı kullanarak bu görevleri komut satırından gerçekleştirebilirsiniz. Kod yazmak ve yapılandırmayı değiştirmek için istediğiniz herhangi bir metin düzenleyicisini kullanın. Ayrıca Azure'da oturum açmak, Azure kaynakları oluşturmak ve proje dosyalarını dağıtmak için Azure CLI veya Azure PowerShell gerekir.

Çekirdek Araçlar adlı functek bir komut satırı yardımcı programı olarak paketlenmiş. Komut satırından başka komut olmadan çalıştırırsanız func , sürüm bilgileri ve kullanım kılavuzu görüntülenir. Bunu şimdi okumanız gerekmez. Ancak, bunlar şöyle gözükür:

A portion of the help text output by func.

Hem Visual Studio hem de Visual Studio Code tümleşik bir yerel hata ayıklama deneyimi sağlamak için Temel Araçlar'ı kullanır.

İşlevler hakkında bazı temel kavramlar aşağıdadır.

İşlev uygulamaları ve işlev projeleri

İşlevleri yerel olarak geliştirirken, bir işlev projesi içinde çalışırsınız. Proje, işlevlerinizi tanımlayan kod ve yapılandırma dosyalarını içeren bir klasördür. Bu kod projesi Azure'daki bir işlev uygulaması kaynağına dağıtılır. İşlev uygulaması örneğinde, tüm işlevler ortak bir yapılandırma değerleri ve kaynakları kümesini paylaşır.

Her işlev uygulaması belirli bir dil yığınını hedefler ve her yığının dile özgü proje gereksinimleri vardır. Neyse ki, işlevler projesini kendiniz oluşturmanız gerekmez. İstediğiniz dilde sıfırdan işlev projeleri ve işlevleri oluşturmak için Temel Araçlar'ı kullanabilirsiniz.

Core Tools sürümleri

Çekirdek Araçlar Azure İşlevleri çalışma zamanını içerdiğinden, kullandığınız Temel Araçların ana sürümü her zaman Azure'daki İşlevler çalışma zamanının ana sürümüyle eşleşmelidir. Şu anda, sürüm 4.x İşlevler çalışma zamanının önerilen sürümüdür ve tüm dilleri destekleyen tek sürümdür. Bu öğreticide Core Tools sürüm 4.x anlatılır ve kullanılır ancak kendi bilgisayarınıza herhangi bir şey yüklemeniz gerekmez. Bu öğreticide, bunun yerine tarayıcınızdaki bir Azure Cloud Shell ortamında Temel Araçlar'ı kullanacaksınız. Cloud Shell'de core tools, Azure CLI ve Node.js'nin doğru sürümleri ve zaten yüklü bir kod düzenleyicisi vardır.

Yerel geliştirme ve Azure portalı geliştirme karşılaştırması

Azure portalı işlev kodunuz için yerleşik bir düzenleyici sağlar ancak bunu yalnızca belirli dil yığınları için kullanabilirsiniz. Ayrıca, yerel olarak geliştirdiğiniz ve Azure'a dağıttığınız işlevleri düzenlemek için portalı kullanamazsınız. Herhangi bir yerel geliştirme iş akışını kullanmaya başladığınızda, işlev kodunuzda değişiklik yapmak için Azure portalını kullanamazsınız.

Temel Araçlar, Azure İşlevleri tarafından desteklenen tüm dil yığınları için yerel geliştirmeyi destekler.

İşlevleri yerel olarak oluşturma

Core Tools ile işlevler oluşturma ve bunları yerel olarak çalıştırma hakkında daha yakından bilgi edinebilirsiniz. Bu öğreticinin ilerleyen bölümlerinde Azure'da yayımlamayı öğrenin.

ile yeni işlev projesi oluşturma func init

Yeni bir işlev projesi oluşturmak için komut satırındafunc init komutunu çalıştırın.

Output from func init creating a JavaScript function project.

func init uygulama için hangi dil çalışma zamanını kullanacağınızı sorar. Proje klasörünün içeriğini uygun şekilde uyarlar.

Yeni bir işlev projesi oluşturduğunuzda, proje klasörüne eklenen dosyalar seçtiğiniz dil çalışma zamanına bağlıdır. Hangi çalışma zamanını seçerseniz seçin, en kritik iki proje dosyası her zaman mevcuttur:

  • host.json, işlev uygulaması için günlük seçenekleri gibi çalışma zamanı yapılandırması değerlerini depolar. Bu dosyada depolanan ayarlar hem işlevleri yerel olarak hem de Azure'da çalıştırdığınızda kullanılır.
  • local.settings.json, yalnızca Çekirdek Araçlar ile yerel olarak çalıştırıldığında işlev uygulamasına uygulanan yapılandırma değerlerini depolar. Bu dosya iki tür ayar içerir:
    • Yerel çalışma zamanı ayarları: Yerel işlevlerin çalışma zamanını yapılandırmak için kullanılır.
    • Özel uygulama ayarları: Bunları uygulamanızın gereksinimlerine göre ekleyip yapılandırabilirsiniz. Uygulamadaki tüm işlevler bunlara erişebilir ve bunları kullanabilir.

func init öğesinin oluşturduğu işlev projelerinde işlev bulunmaz. Sonraki bölümde nasıl ekleyebileceğinizi öğrenin.

ile yeni işlev oluşturma func new

Projedeki her işlev, davranışını tanımlamak için kod ve yapılandırma gerektirir. İşlevler proje klasöründe çalıştırıldığında func new yeni bir işlev ve geliştirmeye başlamak için ihtiyacınız olan tüm dosyalar oluşturulur.

Output from func new creating a JavaScript function.

Ne tür bir işlev tetikleyicisi kullanmak istediğinizi ve işlevinizi adlandırmak istediğinizi sorduktan sonra, func new işlev projenizin seçtiğiniz dilinde eksiksiz, yayımlamaya hazır bir başlangıç uygulaması oluşturur. Başlangıç kodu, seçtiğiniz tetikleyici türünü nasıl kullanacağınızı gösterir ve hızlı bir şekilde başlamanıza yardımcı olmak için oradadır. İşlevin gövdesini kendi uygulamanızla değiştirdiğinizde derlemeye, çalıştırmaya, test etmeye ve yayımlamaya hazır olursunuz.

Bu öğreticinin sonraki bölümünde, HTTP ile tetiklenen bir işlev oluşturmak ve başlangıç uygulamasını basit bir ilgi alanı hesaplaması yapmak üzere değiştirmek için kullanacaksınız func new .

İşlevleri yerel olarak çalıştırma

İşlevler kendi başına çalıştırılabilen programlar değildir. Bunların barındırılması gerekir. Azure İşlevleri ana bilgisayar, işlev kodunuzun dışındaki her şeye güç sağlar: yapılandırmayı yükler, tetikleyicileri ve HTTP isteklerini dinler, işlevlerinizin yazıldık dili için çalışan işlemini başlatır, günlük çıktısı yazar ve daha fazlası. Azure'da işlev uygulamaları, başlatıldığında konağı otomatik olarak çalıştırır.

Azure İşlevleri konağınızın kendi örneğini çalıştırmak ve yayımlamadan önce işlevlerinizi yerel olarak denemek için Çekirdek Araçlar'ı kullanabilirsiniz. İşlevlerinizi yayımlamadan önce çalıştırarak yapılandırmanızın ve kodunuzun doğru şekilde yüklendiğinden emin olabilir ve Azure kaynaklarına ihtiyaç duymadan gerçek HTTP çağrıları yaparak işlevlerinizi test edebilirsiniz.

İşlevler konağını yerel olarak başlatmak için işlevler proje klasöründen func start öğesini çalıştırın. Çıktının sonunda, Çekirdek Araçlar işlevlerinizin her birini çağırmak için kullanabileceğiniz yerel URL'leri görüntüler. İşlevlerinizle etkileşime geçmek için konak çalışıyorken curl gibi HTTP çağrıları yapan araçları veya kitaplıkları kullanabilirsiniz. Çekirdek Araçlar, konak tarafından üretilen günlük çıkışlarını terminale gerçek zamanlı olarak yazar.

func start output showing a function invocation URL.