Acara
17 Mar, 21 - 21 Mar, 10
Bergabunglah dengan seri meetup untuk membangun solusi AI yang dapat diskalakan berdasarkan kasus penggunaan dunia nyata dengan sesama pengembang dan pakar.
Daftar sekarangBrowser ini sudah tidak didukung.
Mutakhirkan ke Microsoft Edge untuk memanfaatkan fitur, pembaruan keamanan, dan dukungan teknis terkini.
Artikel ini memandu Anda menyiapkan lingkungan lokal untuk mengembangkan aplikasi web Python dan menyebarkannya ke Azure. Aplikasi web Anda bisa murni Python atau menggunakan salah satu kerangka kerja web berbasis Python umum seperti Django, Flask, atau FastAPI.
Aplikasi web Python yang dikembangkan secara lokal dapat disebarkan ke layanan seperti Azure App Service, Azure Container Apps, atau Azure Static Web Apps. Ada banyak opsi untuk penyebaran. Misalnya, untuk penyebaran App Service, Anda dapat memilih untuk menyebarkan dari kode, kontainer Docker, atau Static Web App. Jika Anda menyebarkan dari kode, Anda dapat menyebarkan dengan Visual Studio Code, dengan Azure CLI, dari repositori Git lokal, atau dengan tindakan GitHub. Jika Anda menyebarkan dalam Kontainer Docker, Anda dapat melakukannya dari Azure Container Registry, Docker Hub, atau registri privat apa pun.
Sebelum melanjutkan artikel ini, kami sarankan Anda meninjau Menyiapkan lingkungan dev Anda untuk panduan tentang menyiapkan lingkungan dev Anda untuk Python dan Azure. Di bawah ini, kita akan membahas penyiapan dan konfigurasi khusus untuk pengembangan aplikasi web Python.
Setelah Anda mendapatkan penyiapan lingkungan lokal untuk pengembangan aplikasi web Python, Anda akan siap untuk mengatasi artikel ini:
Visual Studio Code lingkungan pengembangan terintegrasi (IDE) adalah cara mudah untuk mengembangkan aplikasi web Python dan bekerja dengan sumber daya Azure yang digunakan aplikasi web.
Tip
Pastikan Anda telah menginstal ekstensi Python. Untuk gambaran umum bekerja dengan Python di Visual Studio Code, lihat Memulai Python di VISUAL Code.
Di Visual Studio Code, Anda bekerja dengan sumber daya Azure melalui ekstensi Visual Studio Code. Anda dapat menginstal ekstensi dari Extensions View atau kombinasi tombol Ctrl+Shift+X. Untuk aplikasi web Python, Anda mungkin akan bekerja dengan satu atau beberapa ekstensi berikut:
Ekstensi Azure App Service memungkinkan Anda berinteraksi dengan Azure App Service dari dalam Visual Studio Code. App Service menyediakan hosting yang dikelola sepenuhnya untuk aplikasi web termasuk situs web dan API web.
Ekstensi Azure Static Web Apps memungkinkan Anda membuat Azure Static Web Apps langsung dari VS Code. Static Web Apps tanpa server dan pilihan yang baik untuk hosting konten statis.
Jika Anda berencana bekerja dengan kontainer, instal:
Ekstensi Docker untuk membangun dan bekerja dengan kontainer secara lokal. Misalnya, Anda dapat menjalankan aplikasi web Python dalam kontainer di Azure App Service menggunakan Web Apps for Containers.
Ekstensi Azure Container Apps untuk membuat dan menyebarkan aplikasi kontainer langsung dari Visual Studio Code.
Ada ekstensi lain seperti Azure Storage, Azure Databases, dan ekstensi Azure Resources. Anda selalu dapat menambahkan ekstensi ini dan ekstensi lain sesuai kebutuhan.
Ekstensi di Visual Studio Code dapat diakses seperti yang Anda harapkan di antarmuka IDE yang khas dan dengan dukungan kata kunci yang kaya menggunakan palet perintah VISUAL Code. Untuk mengakses palet perintah, gunakan kombinasi tombol Ctrl+Shift+P. Palet perintah adalah cara yang baik untuk melihat semua kemungkinan tindakan yang dapat Anda lakukan pada sumber daya Azure. Cuplikan layar di bawah ini menunjukkan beberapa tindakan untuk App Service.
Pengembang Python sering mengandalkan lingkungan virtual untuk membuat lingkungan yang terisolasi dan mandiri untuk proyek tertentu. Lingkungan virtual memungkinkan pengembang mengelola dependensi, paket, dan versi Python secara terpisah untuk setiap proyek, menghindari konflik antara proyek yang berbeda yang mungkin memerlukan versi paket yang berbeda.
Meskipun ada opsi populer yang tersedia di Python untuk mengelola lingkungan seperti virtualenv
atau venv
, ekstensiKontainer DevVisual Studio Code (berdasarkan spesifikasi terbuka Kontainer Dev ) memungkinkan Anda menggunakan kontainer Docker sebagai lingkungan kontainer yang berfitur lengkap. Ini memungkinkan pengembang untuk menentukan toolchain yang konsisten dan mudah direproduksi dengan semua alat, dependensi, dan ekstensi yang diperlukan yang telah dikonfigurasi sebelumnya. Ini berarti jika Anda memiliki persyaratan sistem, konfigurasi shell, atau menggunakan bahasa lain sepenuhnya, Anda dapat menggunakan Kontainer Dev untuk secara eksplisit mengonfigurasi semua bagian proyek Anda yang mungkin tinggal di luar lingkungan Python dasar.
Misalnya, pengembang dapat mengonfigurasi satu Kontainer Dev untuk menyertakan semua yang diperlukan untuk mengerjakan proyek, termasuk server database PostgreSQL bersama dengan database proyek dan data sampel, server Redis, Nginx, kode front-end, pustaka klien seperti React, dan sebagainya. Selain itu, kontainer akan berisi kode proyek, runtime Python, dan semua dependensi proyek Python dengan versi yang benar. Terakhir, kontainer dapat menentukan ekstensi Visual Studio Code yang akan diinstal sehingga seluruh tim memiliki alat yang sama yang tersedia. Jadi ketika pengembang baru bergabung dengan tim, seluruh lingkungan, termasuk alat, dependensi, dan data, siap untuk dikloning ke komputer lokal mereka, dan mereka dapat mulai bekerja segera.
Lihat Pengembangan di dalamKontainer.
Visual Studio 2022 adalah lingkungan pengembangan terintegrasi berfitur lengkap (IDE) dengan dukungan untuk pengembangan aplikasi Python dan banyak alat dan ekstensi bawaan untuk mengakses dan menyebarkan ke sumber daya Azure. Meskipun sebagian besar dokumentasi untuk membangun aplikasi web Python di Azure berfokus pada penggunaan Visual Studio Code, Visual Studio 2022 adalah opsi yang bagus jika Anda sudah menginstalnya, Anda nyaman menggunakannya, dan menggunakannya untuk proyek .NET atau C++.
Secara umum, lihat Visual Studio | Dokumentasi Python untuk semua dokumentasi yang terkait dengan penggunaan Python di Visual Studio 2022.
Untuk langkah-langkah penyiapan, lihat Menginstal dukungan Python di Visual Studio yang memandu Anda melalui langkah-langkah menginstal beban kerja Python ke Visual Studio 2022.
Untuk alur kerja umum penggunaan Python untuk pengembangan web, lihat mulai cepat : Membuat aplikasi web Python pertama Anda menggunakan Visual Studio. Artikel ini berguna untuk memahami cara membangun aplikasi web Python dari awal (tetapi tidak menyertakan penyebaran ke Azure).
Untuk menggunakan Visual Studio 2022 untuk mengelola sumber daya Azure dan menyebarkan ke Azure, lihat Azure Development dengan Visual Studio. Meskipun banyak dokumentasi di sini secara khusus menyebutkan .NET, alat untuk mengelola sumber daya Azure dan menyebarkan ke Azure berfungsi sama terlepas dari bahasa pemrograman.
Saat tidak ada alat bawaan yang tersedia di Visual Studio 2022 untuk tugas manajemen atau penyebaran Azure tertentu, Anda selalu dapat menggunakan perintah azure CLI .
Jika Anda bekerja di IDE lain yang tidak memiliki dukungan eksplisit untuk Azure, maka Anda dapat menggunakan Azure CLI untuk mengelola sumber daya Azure. Pada cuplikan layar di bawah ini, aplikasi web Flask sederhana terbuka di PyCharm IDE. Aplikasi web dapat disebarkan ke Azure App Service menggunakan perintah az webapp up
. Dalam cuplikan layar, perintah CLI berjalan dalam emulator terminal yang disematkan PyCharm. Jika IDE Anda tidak memiliki emulator yang disematkan, Anda dapat menggunakan terminal apa pun dan perintah yang sama. Azure CLI harus diinstal di komputer Anda dan dapat diakses dalam kedua kasus.
Saat bekerja secara lokal dengan aplikasi web menggunakan perintah Azure CLI, Anda biasanya akan bekerja dengan perintah berikut:
Perintah | Deskripsi |
---|---|
az webapp | Mengelola aplikasi web. Termasuk sub perintah membuat dan mengaktifkan untuk membuat aplikasi web atau untuk membuat dan menerapkan dari ruang kerja lokal, masing-masing. |
az aplikasi kontainer | Mengelola Azure Container Apps. |
az staticwebapp | Mengelola Azure Static Web Apps. |
grup az | Mengelola grup sumber daya dan penyebaran templat. Gunakan sub-perintah membuat untuk membuat grup sumber daya untuk memasukkan sumber daya Azure Anda. |
az appservice | Mengelola rencana App Service. |
az konfigurasi | Mengelola konfigurasi Azure CLI. Untuk menyimpan penekanan tombol, Anda dapat menentukan lokasi default atau grup sumber daya yang digunakan perintah lain secara otomatis. |
Berikut adalah contoh perintah Azure CLI untuk membuat aplikasi web dan sumber daya terkait, dan menyebarkannya ke Azure dalam satu perintah menggunakan az webapp up. Jalankan perintah di direktori akar aplikasi web Anda.
az webapp up \
--runtime PYTHON:3.9 \
--sku B1 \
--logs
Untuk informasi selengkapnya tentang contoh ini, lihat mulai cepat : Menyebarkan aplikasi web Python (Django atau Flask) ke Azure App Service.
Perlu diingat bahwa untuk beberapa alur kerja Azure Anda, Anda juga dapat menggunakan Azure CLI dari Azure Cloud Shell. Azure Cloud Shell adalah shell interaktif, diautentikasi, dan dapat diakses browser untuk mengelola sumber daya Azure.
Di aplikasi web Python, Anda dapat merujuk secara terprogram ke layanan Azure menggunakan Azure SDK for Python. SDK ini dibahas secara ekstensif di bagian Menggunakan pustaka Azure (SDK) untuk Python. Di bagian ini, kami akan secara singkat menyebutkan beberapa paket utama SDK yang akan Anda gunakan dalam pengembangan web. Dan, kami akan menampilkan contoh tentang praktik terbaik untuk mengautentikasi kode Anda dengan sumber daya Azure.
Di bawah ini adalah beberapa paket yang umum digunakan dalam pengembangan aplikasi web. Anda dapat menginstal paket di lingkungan virtual Anda secara langsung dengan pip
. Atau masukkan nama indeks paket Python (Pypi) dalam file requirements.txt Anda.
Dokumen SDK | Pasang | Indeks paket Python |
---|---|---|
Azure Identity | pip install azure-identity |
azure-identity |
Blob Penyimpanan Azure | pip install azure-storage-blob |
azure-storage-blob |
Azure Cosmos DB | pip install azure-cosmos |
azure-cosmos |
Rahasia Azure Key Vault | pip install azure-keyvault-secrets |
azure-keyvault-secrets |
Paket azure-identity memungkinkan aplikasi web Anda melakukan autentikasi dengan Microsoft Entra ID. Untuk autentikasi dalam kode aplikasi web Anda, disarankan agar Anda menggunakan DefaultAzureCredential dalam paket azure-identity
. Berikut adalah contoh cara mengakses Azure Storage. Polanya mirip untuk sumber daya Azure lainnya.
from azure.identity import DefaultAzureCredential
from azure.storage.blob import BlobServiceClient
azure_credential = DefaultAzureCredential()
blob_service_client = BlobServiceClient(
account_url=account_url,
credential=azure_credential)
DefaultAzureCredential
akan memeriksa lokasi yang telah ditentukan sebelumnya untuk informasi akun, misalnya, dalam variabel lingkungan atau dari proses masuk ke Azure CLI. Untuk informasi mendalam tentang logika DefaultAzureCredential
, lihat Mengautentikasi aplikasi Python ke layanan Azure dengan menggunakan Azure SDK for Python.
Dalam pengembangan aplikasi web Python, Anda sering bekerja dengan kerangka kerja web berbasis Python. Kerangka kerja ini menyediakan fungsionalitas, seperti templat halaman, manajemen sesi, akses database, dan akses mudah ke objek permintaan dan respons HTTP. Kerangka kerja memungkinkan Anda untuk tidak harus membuat ulang sesuatu yang sudah ada untuk fungsionalitas umum.
Tiga kerangka kerja web Python umum adalah Django, Flask, atau FastAPI. Kerangka kerja web ini dan lainnya dapat digunakan dengan Azure.
Di bawah ini adalah contoh bagaimana Anda dapat memulai dengan cepat dengan kerangka kerja ini secara lokal. Dengan menjalankan perintah ini, Anda akan mendapatkan sebuah aplikasi, walaupun aplikasi yang sederhana yang dapat di-deploy ke Azure. Jalankan perintah ini di dalam lingkungan virtual .
Langkah 1: Unduh kerangka kerja dengan pip.
pip install Django
Langkah 2: Buat aplikasi hello world.
Buat proyek sampel menggunakan perintah startproject django-admin. Proyek ini mencakup file manage.py yang merupakan titik masuk untuk menjalankan aplikasi.
django-admin startproject hello_world
Langkah 3: Jalankan kode secara lokal.
Django menggunakan WSGI untuk menjalankan aplikasi.
python hello_world\manage.py runserver
Langkah 4: Telusuri aplikasi hello world.
http://127.0.0.1:8000/
Pada titik ini, tambahkan file requirements.txt lalu Anda dapat menyebarkan aplikasi web ke Azure atau menampungnya dengan Docker lalu menyebarkannya.
Acara
17 Mar, 21 - 21 Mar, 10
Bergabunglah dengan seri meetup untuk membangun solusi AI yang dapat diskalakan berdasarkan kasus penggunaan dunia nyata dengan sesama pengembang dan pakar.
Daftar sekarangPelatihan
Jalur pembelajaran
Menerapkan situs web ke Azure dengan jalur pembelajaran Azure App Service - Training
Dalam jalur pembelajaran ini, berkenalan menggunakan Azure App Service untuk membuat dan menyebarkan situs web Anda tanpa server, penyimpanan, atau aset jaringan yang mendasarinya.
Sertifikasi
Bersertifikat Microsoft: Azure Developer Associate - Certifications
Bangun solusi end-to-end di Microsoft Azure untuk membuat Azure Functions, menerapkan dan mengelola aplikasi web, mengembangkan solusi yang menggunakan penyimpanan Azure, dan banyak lagi.
Dokumentasi
Memulai dengan hosting aplikasi Python di Azure - Python on Azure
Indeks materi memulai dalam dokumentasi Azure untuk hosting kode aplikasi Python.
Menyebarkan aplikasi web Flask atau FastAPI sebagai kontainer di Azure App Service - Python on Azure
Gambaran umum tentang cara membuat dan menyebarkan aplikasi web Python kontainer (Flask atau FastAPI) di Azure App Service.
Mulai Azure App Service dengan menyebarkan aplikasi Python pertama Anda ke Azure App Service.