Membuat dan menjalankan Azure Functions secara lokal dengan menggunakan Core Tools

Selesai

Azure Functions Core Tools memungkinkan Anda mengembangkan dan menjalankan fungsi di komputer lokal Anda dari baris perintah.

Anda ingin membangun fungsi pertama Anda, kalkulator minat sederhana, secara lokal di komputer Anda sendiri dan bukan di editor fungsi portal Azure. Anda tidak yakin apakah Anda ingin menggunakan lingkungan pengembangan seperti Visual Studio atau Visual Studio Code, yang keduanya dapat diperluas untuk mendukung Azure Functions secara langsung. Pada akhirnya, Anda memutuskan untuk menggunakan Alat Inti dari baris perintah dan editor teks dasar.

Di unit ini, Anda mempelajari cara menggunakan Core Tools untuk membuat dan menjalankan fungsi secara lokal. Mari pelajari selengkapnya tentang Alat Core sebelum menggunakannya dalam latihan di unit berikutnya, yang memandu Anda melalui konsep-konsep ini menggunakan Azure Cloud Shell.

Apa itu Azure Functions Core Tools?

Azure Functions Core Tools adalah runtime mandiri bersama dengan sekumpulan alat baris perintah yang dapat Anda gunakan untuk mengembangkan, menjalankan, dan menyebarkan kode fungsi dari komputer lokal Anda.

Core Tools mendukung beberapa kemampuan terkait fungsi, termasuk:

  • Buat file dan folder yang Anda butuhkan untuk mengembangkan fungsi secara lokal.
  • Berikan runtime lokal sehingga Anda dapat menguji dan men-debug fungsi di komputer Anda.
  • Menerbitkan fungsi Anda ke Azure.

Dengan menggunakan Core Tools, Anda dapat menyelesaikan tugas-tugas ini dari baris perintah. Gunakan editor teks apa pun yang Anda suka untuk menulis kode dan mengubah konfigurasi. Anda juga memerlukan Azure CLI atau Azure PowerShell untuk masuk ke Azure, membuat sumber daya Azure, dan menyebarkan file proyek.

Core Tools dimas sebagai utilitas baris perintah tunggal bernama func. Jika Anda menjalankan func dari baris perintah tanpa perintah lain, perintah tersebut akan menampilkan informasi versi dan panduan penggunaan. Anda tidak perlu membacanya sekarang, tetapi seperti inilah gambarannya:

A portion of the help text output by func.

Visual Studio dan Visual Studio Code menggunakan Core Tools untuk memberikan pengalaman debugging lokal terintegrasi.

Berikut adalah beberapa konsep dasar tentang fungsi.

Aplikasi fungsi dan proyek fungsi

Saat Anda mengembangkan fungsi secara lokal, Anda bekerja dalam proyek fungsi. Proyek adalah folder yang berisi kode dan file konfigurasi yang menentukan fungsi Anda. Proyek kode ini disebarkan ke sumber daya aplikasi fungsi di Azure. Dalam instans aplikasi fungsi, semua fungsi berbagi sekumpulan nilai dan sumber daya konfigurasi umum.

Setiap aplikasi fungsi menargetkan tumpukan bahasa tertentu, dan setiap tumpukan memiliki persyaratan proyek khusus bahasa sendiri. Untungnya, Anda tidak perlu membuat proyek fungsi secara manual sendiri. Anda dapat menggunakan Core Tools untuk menghasilkan proyek dan fungsi fungsi dari awal dalam bahasa yang Anda inginkan.

Versi Core Tools

Karena Core Tools menyertakan runtime Azure Functions, versi utama Core Tools yang Anda gunakan harus selalu cocok dengan versi utama runtime Functions di Azure. Saat ini, versi 4.x adalah versi runtime Functions yang direkomendasikan, dan satu-satunya versi yang mendukung semua bahasa. Meskipun tutorial ini membahas dan menggunakan Core Tools versi 4.x, Anda tidak perlu menginstal apa pun di komputer Anda sendiri. Dalam tutorial ini, Anda menggunakan Core Tools di lingkungan Azure Cloud Shell di browser Anda. Cloud Shell sudah memiliki versi Core Tools, Azure CLI, dan Node.js yang benar, bersama dengan editor kode yang sudah diinstal.

Pengembangan lokal vs. Pengembangan portal Microsoft Azure

Meskipun portal Azure menyediakan editor bawaan untuk kode fungsi Anda, Anda hanya dapat menggunakannya untuk tumpukan bahasa tertentu. Anda juga tidak dapat menggunakan portal untuk mengedit fungsi yang Anda kembangkan secara lokal dan menyebarkan ke Azure. Saat mulai menggunakan alur kerja pengembangan lokal apa pun, Anda tidak dapat menggunakan portal Azure untuk membuat perubahan pada kode fungsi Anda.

Core Tools mendukung pengembangan lokal untuk semua tumpukan bahasa yang didukung oleh Azure Functions.

Membuat fungsi secara lokal

Berikut adalah lihat lebih dekat cara membuat fungsi dengan Core Tools dan menjalankannya secara lokal. Pelajari cara menerbitkan ke Azure nanti dalam tutorial ini.

Buat proyek fungsi baru dengan func init

Untuk membuat proyek fungsi baru, jalankan func init pada baris perintah.

Output from func init creating a JavaScript function project.

func init meminta Anda runtime bahasa mana yang akan digunakan untuk aplikasi. Ini menyesuaikan konten folder proyek dengan tepat.

Saat Anda membuat proyek fungsi baru, file yang disertakan dalam folder proyek bergantung pada runtime bahasa yang Anda pilih. Terlepas dari runtime mana yang Anda pilih, dua file proyek paling penting selalu ada:

  • host.jsdi menyimpan nilai konfigurasi runtime, seperti opsi pembuatan log, untuk aplikasi fungsi. Pengaturan yang disimpan dalam file ini digunakan baik saat Anda menjalankan fungsi secara lokal maupun di Azure.
  • local.settings.json menyimpan nilai konfigurasi yang hanya berlaku untuk aplikasi fungsi saat berjalan secara lokal dengan Core Tools. File ini berisi dua jenis pengaturan:
    • Pengaturan runtime lokal: Digunakan untuk mengonfigurasi runtime fungsi lokal itu sendiri.
    • Pengaturan aplikasi kustom: Anda menambahkan dan mengonfigurasinya berdasarkan kebutuhan aplikasi Anda. Semua fungsi dalam aplikasi dapat mengakses dan menggunakannya.

Proyek fungsi yang func init hasilkan tidak memiliki fungsi apa pun di dalamnya. Di bagian berikutnya, cari tahu cara menambahkannya.

Buat fungsi baru dengan func new

Setiap fungsi individu dalam sebuah proyek memerlukan kode dan konfigurasi untuk menentukan perilakunya. Menjalankan func new dalam folder proyek fungsi membuat fungsi baru dan semua file yang Anda butuhkan untuk mulai mengembangkan.

Output from func new creating a JavaScript function.

Setelah menanyakan jenis pemicu fungsi mana yang ingin Anda gunakan dan apa yang ingin Anda beri nama fungsi Anda, func new menghasilkan implementasi pemula yang lengkap dan siap diterbitkan dalam bahasa yang dipilih proyek fungsi Anda. Kode pemula menggambarkan cara menggunakan jenis pemicu yang Anda pilih dan ada untuk membantu Anda memulai dengan cepat. Ganti isi fungsi dengan implementasi Anda sendiri, dan Anda siap untuk membangun, menjalankan, menguji, dan menerbitkan.

Di bagian berikutnya dari tutorial ini, Anda menggunakan func new untuk membuat fungsi yang dipicu HTTP dan memodifikasi implementasi starter untuk melakukan perhitungan bunga sederhana.

Jalankan fungsi secara lokal

Fungsi bukan program yang dapat dijalankan sendiri. Mereka harus dihosting. Host Azure Functions adalah apa yang mendukung segala sesuatu di luar kode fungsi Anda: ia memuat konfigurasi, mendengarkan pemicu dan permintaan HTTP, memulai proses pekerja untuk bahasa tempat fungsi Anda ditulis, menulis output log, dan banyak lagi. Di Azure, aplikasi fungsi menjalankan host secara otomatis saat dimulai.

Anda dapat menggunakan Core Tools untuk menjalankan instans host Azure Functions Anda sendiri dan mencoba fungsi Anda secara lokal sebelum menerbitkannya. Dengan menjalankan fungsi Anda sebelum menerbitkannya, Anda dapat memastikan konfigurasi dan kode dimuat dengan benar dan menguji fungsi Anda dengan melakukan panggilan HTTP nyata terhadap fungsi tersebut tanpa memerlukan sumber daya Azure.

Untuk memulai host fungsi secara lokal, jalankan func start dari folder proyek fungsi. Di akhir output, Core Tools menampilkan URL lokal yang dapat Anda gunakan untuk memanggil setiap fungsi Anda. Saat host berjalan, Anda dapat menggunakan alat atau pustaka apa pun yang melakukan panggilan HTTP, seperti curl, untuk berinteraksi dengan fungsi Anda. Core Tools menulis output log apa pun yang dihasilkan oleh host ke terminal secara real time.

func start output showing a function invocation URL.