Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Artikel ini adalah bagian 3 dari seri tutorial 5 bagian tentang kontainerisasi dan penyebaran aplikasi web Python ke Azure App Service. Di bagian 2, Anda membangun dan menjalankan gambar kontainer secara lokal. Dalam artikel ini, Anda membuat aplikasi web Python yang sama langsung di Azure Container Registry tanpa menginstal Docker secara lokal. Membangun gambar di Azure biasanya lebih cepat dan lebih mudah daripada membangun secara lokal dan kemudian mendorongnya ke registri. Pembuatan gambar berbasis cloud juga menghilangkan kebutuhan Docker untuk berjalan di lingkungan pengembangan Anda.
Azure App Service memungkinkan Anda menyebarkan dan menjalankan aplikasi web kontainer menggunakan alur CI/CD dari platform seperti Docker Hub, Azure Container Registry, dan Azure DevOps. Setelah gambar Docker berada di Azure Container Registry, Anda dapat menyebarkannya ke Azure App Service.
Prasyarat
Sebelum memulai, pastikan Anda menyelesaikan bagian 2 dari seri tutorial ini, yang mencakup:
- Mengkloning repositori sampel (Django atau Flask).
- Membuat grup sumber daya untuk sumber daya Azure.
- Menjalankan aplikasi kontainer secara lokal untuk memverifikasi bahwa aplikasi berfungsi.
Anda juga perlu:
- Langganan Azure aktif. Jika Anda belum memilikinya, buat akun gratis.
- Azure CLI diinstal secara lokal (untuk langkah-langkah Azure CLI) atau akses ke Azure Cloud Shell.
- Visual Studio Code dengan ekstensi Docker terinstal (untuk langkah-langkah Visual Studio Code).
Penting
Contoh Dockerfile digunakan python:3.8-slim sebagai gambar dasar.
Python 3.8 mencapai akhir masa pakai pada Oktober 2024 dan tidak lagi menerima pembaruan keamanan. Perbarui Dockerfile Anda untuk digunakan python:3.12-slim atau python:3.13-slim untuk penyebaran produksi.
Diagram layanan ini menyoroti komponen yang tercakup dalam artikel ini.
- Azure CLI
- Visual Studio Code
Membuat Azure Container Registry
Jika Anda sudah memiliki Azure Container Registry, lewati langkah ini dan lanjutkan ke langkah berikutnya. Jika tidak, buat Azure Container Registry baru dengan menggunakan Azure CLI.
Anda dapat menjalankan perintah Azure CLI di Azure Cloud Shell atau di lingkungan pengembangan lokal Anda dengan Azure CLI diinstal.
Nota
Gunakan nama yang sama seperti di bagian 2 dari seri tutorial ini.
Buat registri kontainer Azure dengan menggunakan perintah az acr create.
#!/bin/bash # Use the resource group that you created in part 2 of this tutorial series. RESOURCE_GROUP_NAME='msdocs-web-app-rg' # REGISTRY_NAME must be unique within Azure and contain 5-50 alphanumeric characters. # If the name is already taken, you'll receive an error. Choose a different name and retry. REGISTRY_NAME='msdocscontainerregistryname' echo "Creating Azure Container Registry $REGISTRY_NAME..." az acr create -g $RESOURCE_GROUP_NAME -n $REGISTRY_NAME --sku StandardDalam output JSON dari perintah, temukan nilainya
loginServer. Nilai ini mewakili nama registri yang sepenuhnya memenuhi syarat (semua huruf kecil) dan berisi nama registri.Contoh output:
{ "loginServer": "msdocscontainerregistryname.azurecr.io", "name": "msdocscontainerregistryname", ... }Jika Anda menggunakan Azure CLI di komputer lokal Anda, jalankan perintah az acr login untuk masuk ke registri kontainer.
az acr login -n $REGISTRY_NAMEParameter
-nmenerima nama registri pendek (misalnya,msdocscontainerregistryname) atau nama registri yang sepenuhnya memenuhi syarat (msdocscontainerregistryname.azurecr.io). Perintah mengautentikasi Docker dengan Azure Container Registry menggunakan kredensial Azure CLI Anda.Output yang diharapkan:
Login SucceededNota
Jika Anda menggunakan Azure Cloud Shell, Anda tidak perlu menjalankan
az acr loginperintah karena sesi Cloud Shell Anda secara otomatis menangani autentikasi.
Membuat gambar di Azure Container Registry
Anda dapat menghasilkan gambar kontainer langsung di Azure melalui berbagai pendekatan:
- Azure Cloud Shell memungkinkan Anda membuat gambar sepenuhnya di cloud, terlepas dari lingkungan lokal Anda.
- Atau, Anda dapat menggunakan Visual Studio Code atau Azure CLI untuk membuat gambar di Azure dari pengaturan lokal Anda, tanpa memerlukan Docker untuk berjalan secara lokal.
Anda dapat menjalankan perintah Azure CLI di lingkungan pengembangan lokal Anda dengan menggunakan Azure CLI yang diinstal atau di Azure Cloud Shell.
Di konsol, buka folder akar untuk repositori kloning Anda dari bagian 2 dari seri tutorial ini.
Buat gambar kontainer dengan menggunakan perintah az acr build .
Pengembangan lokal:
az acr build -r $REGISTRY_NAME -g $RESOURCE_GROUP_NAME -t msdocspythoncontainerwebapp:latest .Azure Cloud Shell:
Jika Anda menggunakan Azure Cloud Shell, tentukan URL repositori GitHub alih-alih jalur lokal (
.):# For Django sample: az acr build -r $REGISTRY_NAME -g $RESOURCE_GROUP_NAME -t msdocspythoncontainerwebapp:latest https://github.com/Azure-Samples/msdocs-python-django-container-web-app.git # For Flask sample: az acr build -r $REGISTRY_NAME -g $RESOURCE_GROUP_NAME -t msdocspythoncontainerwebapp:latest https://github.com/Azure-Samples/msdocs-python-flask-container-web-app.gitArgumen akhir (
.atau URL Git) adalah konteks build Docker—direktori yang berisi file Dockerfile dan aplikasi yang digunakan Docker untuk membangun gambar.Konfirmasikan gambar kontainer dibuat dengan menggunakan perintah az acr repository list .
az acr repository list -n $REGISTRY_NAMEOutput yang diharapkan:
[ "msdocspythoncontainerwebapp" ]