Öğretici: Azure App Service'de PostgreSQL ile Django web uygulaması Azure App Service
Bu öğreticide, veri odaklı bir Python Django web uygulamasının Azure App Service ve Postgres için Azure Veritabanı veritabanına nasıl bağlanarak dağıtın. Yukarıdaki seçeneği kullanarak PostgresSQL Esnek Sunucu'ya da ebilirsiniz. Esnek Sunucu daha basit bir dağıtım mekanizması ve daha düşük sürekli maliyetler sağlar.
Bu öğreticide, aşağıdaki görevleri tamamlamak için Azure CLI'sini kullanırsınız:
- Python ve Azure CLI ile ilk ortamınızı ayarlama
- PostgreSQL için Azure Veritabanı oluşturma
- PostgreSQL'Azure App Service bağlanmak için kod dağıtma
- Kodunuzu güncelleştirme ve yeniden yükleme
- Tanılama günlüklerini görüntüleme
- Web uygulamasını Azure portal
Bu öğreticinin Azure portal sürümünü de kullanabilirsiniz.
Bu öğreticide, bir veri odaklı Python Django web uygulamasının Azure App Service esnek sunucu veritabanına PostgreSQL için Azure Veritabanı nasıl dağıtın? PostgreSQL Esnek Sunucu'ya sahip değilseniz yukarıdaki Tek Sunucu seçeneğini belirleyin.
Bu öğreticide, aşağıdaki görevleri tamamlamak için Azure CLI'sini kullanırsınız:
- Python ve Azure CLI ile ilk ortamınızı ayarlama
- Esnek PostgreSQL için Azure Veritabanı veritabanı oluşturma
- PostgreSQL Esnek Azure App Service'a bağlanmak için kod dağıtma
- Kodunuzu güncelleştirme ve yeniden yükleme
- Tanılama günlüklerini görüntüleme
- Web uygulamasını Azure portal
Bu öğreticinin Azure portal sürümünü de kullanabilirsiniz.
1. İlk ortamınızı ayarlama
- Etkin aboneliği olan bir Azure hesabına sahip olun. Ücretsiz bir hesap oluşturun.
- Python 3.6 veya üst sürümü yükleyin.
- Azure kaynaklarını sağlama ve yapılandırma için komutlarını herhangi bir kabukta çalıştırarak Azure CLI 2.18.0 veya üst sürümü yükleyin.
Bir terminal penceresi açın ve Python sürümü 3.6 veya daha yüksek olup ola bir kontrol edin:
python3 --version
Azure CLI sürümünün 2.18.0 veya daha yüksek olup olamay olduğunu kontrol edin:
az --version
Yükseltmeniz gerekirse komutunu deneyin az upgrade (sürüm 2.11+ gerekir) veya bkz. Azure CLI'sini yükleme.
Ardından CLI aracılığıyla Azure'da oturum açma:
az login
Bu komut, kimlik bilgilerinizi toplamak için bir tarayıcı açar. Komut tamamlansa, abonelikleriniz hakkında bilgi içeren JSON çıktısını gösterir.
Oturum başladıktan sonra, aboneliğinizin kaynaklarıyla çalışmak için Azure CLI ile Azure komutlarını çalıştırabilirsiniz.
Sorun mu var? Bize haber ver.
2. Örnek uygulamayı kopyalama veya indirme
Örnek depoyu kopyalama:
git clone https://github.com/Azure-Samples/djangoapp
Ardından şu klasöre gidin:
cd djangoapp
Esnek Sunucu için, veritabanı sunucusu URL'sinin nasıl ayar olduğu ve Azure PostgreSQL Esnek Sunucusu'nun gerektiğinde Django veritabanı yapılandırmasına eklemesi gibi birkaç gerekli değişikliği içeren örneğin esnek sunucu 'OPTIONS': {'sslmode': 'require'} dalı kullanın.
git checkout flexible-server
djangoapp örneği, Django belgelerinde ilk Django uygulamanızı yazarak elde edersiniz veri odaklı Django yoklama uygulamasını içerir. Tamamlanan uygulama size kolaylık sağlamak için burada sağlanmıştır.
Örnek, aşağıdakiler gibi bir üretim ortamında çalıştıracak App Service:
- Üretim ayarları azuresite/production.py dosyasındadır. Geliştirme ayarları azuresite/settings.py içindedir.
- Ortam değişkeni ayarlanırken uygulama
WEBSITE_HOSTNAMEüretim ayarlarını kullanır. Azure App Service değişkeni otomatik olarak web uygulamasının URL'sine ayarlar,msdocs-django.azurewebsites.netörneğin: .
Üretim ayarları, Django'nun herhangi bir üretim ortamında çalıştıracak şekilde yapılandırılması için özeldir ve herhangi bir App Service. Daha fazla bilgi için bkz. Django dağıtım denetim listesi. Ayrıca bazı değişiklikler hakkında ayrıntılı bilgi için bkz. Azure'da Django için üretim ayarları.
Sorun mu var? Bize haber ver.
3. Azure'da Postgres veritabanı oluşturma
Azure db-up CLI için uzantıyı yükleyin:
az extension add --name db-up
Komut az tanınmıyorsa, İlk ortamınızı ayarlama konusunda açıklandığı gibi Azure CLI'nin yüklü olduğundan emin olun.
Ardından komutuyla Azure'da Postgres veritabanını az postgres up oluşturun:
az postgres up --resource-group DjangoPostgres-tutorial-rg --location centralus --sku-name B_Gen5_1 --server-name <postgres-server-name> --database-name pollsdb --admin-user <admin-username> --admin-password <admin-password> --ssl-enforcement Enabled
- Değiştirmek <postgres-server-name> tüm Azure'da benzersiz bir adla (sunucu uç noktası
https://<postgres-server-name>.postgres.database.azure.comolur). İyi bir desen, şirket adınızla başka bir benzersiz değerin birleşimini kullanmaktır. - ve <admin-username> <admin-password> için, bu Postgres sunucusu için yönetici kullanıcı oluşturmak için kimlik bilgilerini belirtin. Yönetici kullanıcı adı , azure_superuser , azure_pg_admin, yönetici, kök, konuk veya genel olarak silinenin. bu, ile pg_. Parola şu kategorilerin üçünden 8 ile 128 karakter arasında olmalıdır: İngilizce büyük harfler, İngilizce küçük harfler, sayılar (0-9) ve alfasayısal olmayan karakterler (örneğin, !, #, %). Parolada kullanıcı adı bulunamaz.
- Kullanıcı adı veya
$parolada karakterini kullanma. Daha sonra, karakterinin Python uygulamalarını çalıştırmak için kullanılan Linux kapsayıcısı içinde özel bir anlamı olduğu$bu değerlerle ortam değişkenleri oluşturabilirsiniz. - Burada B_Gen5_1 (Temel, 5. Nesil, 1 çekirdek) fiyatlandırma katmanı en düşük maliyetli katmandır. Üretim veritabanları için bağımsız değişkenlerini atarak
--sku-nameGP_Gen5_2 (Genel Amaçlı, 5. Nesil, 2 çekirdek) katmanını kullanın.
Bu komut aşağıdaki eylemleri gerçekleştirir ve bu işlem birkaç dakika sürebilir:
- Henüz yoksa
DjangoPostgres-tutorial-rgadlı bir kaynak grubu oluşturun. - bağımsız değişkeniyle adlı bir Postgres sunucusu
--server-nameoluşturun. - ve bağımsız değişkenlerini kullanarak bir
--admin-useryönetici--admin-passwordhesabı oluşturun. Komutun sizin için benzersiz kimlik bilgileri oluşturmasına izin vermek için bu bağımsız değişkenleri atabilirsiniz. - bağımsız değişkeni
pollsdbtarafından adlı bir veritabanı--database-nameoluşturun. - Yerel IP adresinizden erişimi etkinleştirin.
- Azure hizmetlerinden erişimi etkinleştirme.
- Veritabanına erişimi olan bir veritabanı kullanıcısı
pollsdboluşturun.
Tüm adımları diğer ve komutlarıyla ayrı ayrı az postgres psql yapabilirsiniz, ancak az postgres up tüm adımları birlikte yapar.
Komut tamamlandığında, sunucu URL'si, oluşturulan bir kullanıcı adı (örneğin, " " ) ve guid parolası ile birlikte veritabanı için farklı bağlantı dizeleri içeren bir JSON joyfulKoala@msdocs-djangodb-12345 nesnesi çıkışını verir. Kullanıcı adını ve parolayı, bu öğreticinin sonraki adımlarında ihtiyacınız olacak şekilde geçici bir metin dosyasına kopyalayın.
İpucu
-l <location-name>, Azure bölgelerinden herhangi biri olarak ayarlanmış olabilir. komutunu kullanarak aboneliğinizin kullanılabilir bölgelerini az account list-locations edinebilirsiniz. Üretim uygulamaları için veritabanınızı ve uygulamalarınızı aynı konuma koyabilirsiniz.
Azure CLI ile parametreleri önbelleğe almayı etkinleştirerek bu parametreleri her komutla birlikte sağlamanız gerekebilirsiniz. (Önbelleğe alınan değerler .azure klasörüne kaydedilir.)
az config param-persist onBir kaynak grubu oluşturun ( istenirse adı değiştirebilirsiniz). Kaynak grubu adı önbelleğe alınmış ve sonraki komutlara otomatik olarak uygulanmıştır.
az group create --name Python-Django-PGFlex-rg --location centralusVeritabanı sunucusunu oluşturun (işlem birkaç dakika sürer):
az postgres flexible-server create --sku-name Standard_B1ms --public-access allazKomut tanınmazsa, Ilk ortamınızı ayarlamabölümünde AÇıKLANDıĞı gibi Azure CLI 'nin yüklü olduğundan emin olun.Az Postgres esnek-sunucu oluştur komutu, birkaç dakika sürecek olan aşağıdaki eylemleri gerçekleştirir:
- Zaten önbelleğe alınmış bir ad yoksa, varsayılan bir kaynak grubu oluşturun.
- Bir PostgreSQL esnek sunucusu oluşturun:
- Varsayılan olarak, komut gibi oluşturulmuş bir ad kullanır
server383813186. Parametresiyle kendi adınızı belirtebilirsiniz--name. Bu ad Azure genelinde benzersiz olmalıdır. - Komut en düşük maliyetli
Standard_B1msfiyatlandırma katmanını kullanır.--sku-nameVarsayılan katmanı kullanmak için bağımsız değişkenini atlayınStandard_D2s_v3. - Bu komut, önceki komuttan önbelleğe alınmış olan kaynak grubunu ve konumu kullanır
az group create. Bu örnekte, bölgedeki kaynak grubudurPython-Django-PGFlex-rgcentralus.
- Varsayılan olarak, komut gibi oluşturulmuş bir ad kullanır
- Kullanıcı adı ve parola ile bir yönetici hesabı oluşturun. Bu değerleri,
--admin-userve parametreleriyle doğrudan belirtebilirsiniz--admin-password. - Varsayılan olarak adlı bir veritabanı oluşturun
flexibleserverdb. Parametresiyle bir veritabanı adı belirtebilirsiniz--database-name. - , Parametresini kullanarak denetleyebilmeniz için tüm genel erişimi mümkün bir şekilde sunar
--public-access.
Komut tamamlandığında, bu öğreticide daha sonra gelen çıkışın, özellikle de ana bilgisayar, Kullanıcı adı ve parola gibi veritabanı adıyla birlikte Bu öğreticinin ilerleyen kısımlarında yer alırken komutun JSON çıkışını bir dosyaya kopyalayın .
Sorun mu yaşıyorsunuz? Bize bilgi verin.
4. kodu Azure App Service dağıtın
Bu bölümde App Service uygulamasında uygulama konağı oluşturur, bu uygulamayı Postgres veritabanına bağlayın ve ardından kodunuzu bu konağa dağıtın.
4,1 App Service uygulaması oluşturma
Terminalde, uygulama kodunu içeren docgoapp depo klasöründe olduğunuzdan emin olun.
Komutuyla bir App Service uygulaması (ana bilgisayar işlemi) oluşturun az webapp up :
az webapp up --resource-group DjangoPostgres-tutorial-rg --location centralus --plan DjangoPostgres-tutorial-plan --sku B1 --name <app-name>
--locationBağımsız değişkeni için, önceki bölümde veritabanıyla aynı konumu kullanın.- Değiştir <app-name> Tüm Azure genelinde benzersiz bir adla (sunucu uç noktası
https://<app-name>.azurewebsites.net). <app-name>A-Z,0-9Ve-için izin verilen karakterler. İyi bir model, şirketinizin adının ve uygulama tanımlayıcısının bir birleşimini kullanmaktır.
Bu komut, birkaç dakika sürebilen aşağıdaki eylemleri gerçekleştirir:
- Zaten mevcut değilse kaynak grubunu oluşturun. (Bu komutta veritabanını daha önce oluşturduğunuz kaynak grubunu kullanırsınız.)
- Mevcut değilse, temel fiyatlandırma katmanında (B1) docgopostgres-öğretici-plan App Service planını oluşturun.
--planve--skuisteğe bağlıdır. - Yoksa App Service uygulamasını oluşturun.
- Zaten etkinleştirilmemişse, uygulama için varsayılan günlüğü etkinleştirin.
- derleme otomasyonu etkinken zıp dağıtımını kullanarak depoyu Upload.
- Kaynak grubunun adı ve App Service planı gibi ortak parametreleri dosyaya . Azure/config dosyasına ekleyin. Sonuç olarak, sonraki komutlarla aynı parametreyi belirtmeniz gerekmez. Örneğin, değişiklikleri yaptıktan sonra uygulamayı yeniden dağıtmak için
az webapp upherhangi bir parametre olmadan yalnızca tekrar çalıştırabilirsiniz. Bununla birlikte, CLı uzantılarından gelen komutlaraz postgres upmevcut değildir. bu nedenle, kaynak grubunu ve konumu ilk kullanımı ile burada belirtmeniz gerekli değildiraz webapp up.
Terminalde, uygulama kodunu içeren docgoapp depo klasöründe olduğunuzdan emin olun.
Örnek uygulamanın
flexible-serverdalına geçin. Bu dal, PostgreSQL için gereken belirli yapılandırmayı içerir esnek sunucu:git checkout flexible-serveraz webapp upUygulamanın App Service konağını oluşturmak için aşağıdaki komutu çalıştırın:az webapp up --name <app-name> --sku B1Bu komut, önceki
az group createkomuttan (Python-Django-PGFlex-rgBu örnekteki bölgedeki grup) önbelleğe alınmış kaynak grubunu ve konumu kullanarak birkaç dakika sürebilen aşağıdaki eylemleri gerçekleştirircentralus.- Temel fiyatlandırma katmanında bir App Service planı oluşturun (B1).
--skuVarsayılan değerleri kullanmak için atlayabilirsiniz. - App Service uygulamasını oluşturun.
- Uygulama için varsayılan günlük kaydını etkinleştirin.
- derleme otomasyonu etkinken zıp dağıtımını kullanarak depoyu Upload.
- Temel fiyatlandırma katmanında bir App Service planı oluşturun (B1).
Dağıtım başarılı olduğunda, komut aşağıdaki örnekte olduğu gibi JSON çıktısı üretir:

Sorun mu yaşıyorsunuz? İlk olarak sorun giderme kılavuzunabaşvurun, aksi takdirde bize bilgi verin.
4,2 ortam değişkenlerini veritabanına bağlanacak şekilde yapılandırma
Kod artık App Service dağıtılır ve sonraki adım, uygulamayı Azure 'daki Postgres veritabanına bağlayabilmektedir.
Uygulama kodu,,, ve adlı dört ortam değişkeni içinde veritabanı bilgilerini bulmayı bekler DBHOST DBNAME DBUSER DBPASS .
App Service ortam değişkenlerini ayarlamak için, aşağıdaki az WebApp config appSettings set komutuyla "uygulama ayarları" oluşturun.
az webapp config appsettings set --settings DBHOST="<postgres-server-name>" DBUSER="<username>" DBPASS="<password>" DBNAME="pollsdb"
- <postgres-server-name> Daha önce komutuyla kullandığınız adla değiştirin
az postgres up. Azuresite/Production. kay içindeki kod,.postgres.database.azure.comtam Postgres sunucu URL 'sini oluşturmak için otomatik olarak ekler. - <username> Ve <password> ' yi önceki komutla kullandığınız yönetici kimlik bilgileriyle
az postgres upveyaaz postgres upsizin için oluşturulan yöneticilerle değiştirin. Azuresite/Production. kay içindeki kod, ve ' deki tam Postgres Kullanıcı adını otomatik olarak oluştururDBUSER, buDBHOSTnedenle@serverbölümü içermez. (Ayrıca, daha önce belirtildiği gibi,$Linux ortam değişkenleri için özel bir anlam içerdiğinden, karakteri her iki değerde de kullanmamalısınız.) - Kaynak grubu ve uygulama adları, . Azure/config dosyasındaki önbelleğe alınmış değerlerden çizilir.
az webapp config appsettings set --settings DBHOST="<host>" DBUSER="<username>" DBPASS="<password>" DBNAME="flexibleserverdb"
Ana bilgisayar, Kullanıcı adı ve parola değerlerini az postgres flexible-server create daha önce kullanılan komutun çıktılarından olanlarla değiştirin. Konak, gibi bir URL olmalıdır server383813186.postgres.database.azure.com .
Ayrıca, flexibleserverdb komutunu komutuyla değiştirdiyseniz veritabanı adıyla değiştirin az postgres flexible-server create .
Python kodunuzda bu ayarlara, gibi deyimlerle ortam değişkenleri olarak erişirsiniz os.environ.get('DBHOST') . Daha fazla bilgi için bkz. ortam değişkenlerine erişin.
Sorun mu yaşıyorsunuz? İlk olarak sorun giderme kılavuzunabaşvurun, aksi takdirde bize bilgi verin.
4,3 Docgo veritabanı geçişlerini Çalıştır
Docgo veritabanı geçişleri, Azure veritabanı 'ndaki PostgreSQL içindeki şemanın kodunuzda açıklananlarla eşleştiğinden emin olun.
az webpp sshTarayıcıda Web uygulaması için BIR SSH oturumu açmak üzere Çalıştır:az webapp sshSSH oturumuna bağlanamıyorsanız, uygulamanın kendisi başlatılamadı. Ayrıntılar için Tanılama günlüklerine bakın . Örneğin, önceki bölümde gerekli uygulama ayarlarını oluşturmadıysanız Günlükler gösterilir
KeyError: 'DBNAME'.SSH oturumunda aşağıdaki komutları çalıştırın ( CTRL + SHIFT + V kullanarak komutları yapıştırabilirsiniz):
# Run database migrations python manage.py migrate # Create the super user (follow prompts) python manage.py createsuperuserVeritabanına bağlanma ile ilgili herhangi bir hatayla karşılaşırsanız, önceki bölümde oluşturulan uygulama ayarlarının değerlerini denetleyin.
Bu
createsuperuserkomut sizden süper kullanıcı kimlik bilgilerini ister. Bu öğreticinin amaçları doğrultusunda, varsayılan kullanıcı adını kullanınroot, e-posta adresi Için ENTER tuşuna basarak boş bırakın vePollsdb1parola girin.Veritabanının kilitlendiğini belirten bir hata görürseniz,
az webapp settingsönceki bölümde komutunu çalıştırdığınızdan emin olun. Bu ayarlar olmadan, geçiş komutu veritabanıyla iletişim kuramaz ve hataya neden olur.
Sorun mu yaşıyorsunuz? İlk olarak sorun giderme kılavuzunabaşvurun, aksi takdirde bize bilgi verin.
4,4 uygulamada bir yoklama sorusu oluşturma
Uygulama Web sitesini açın. Veritabanında henüz belirli bir yoklamalar bulunmadığından, uygulamanın "uygulamayı yokladığı" ve "hiçbir yoklama yok" iletisini görüntülemesi gerekir.
az webapp browse"Uygulama hatası" görürseniz, önceki adımda gerekli ayarları oluşturmadınız, veritabanı bağlamak için ortam değişkenlerini yapılandırmadanveya bu değerde hata içereceksinizdir olabilir.
az webapp config appsettings listAyarları denetlemek için komutunu çalıştırın. Uygulama başlatma sırasında belirli hataları görmek için tanılama günlüklerini de denetleyebilirsiniz . Örneğin, ayarları oluşturmadıysanız günlüklerde hata gösterilirKeyError: 'DBNAME'.Hataları düzeltmek için ayarları güncelleştirdikten sonra, uygulamayı yeniden başlatmak için bir dakika verin ve ardından Tarayıcıyı yenileyin.
URL 'ye ekleyerek Web uygulamasının yönetim sayfasına gidin
/admin, örneğin,http://<app-name>.azurewebsites.net/admin. Önceki bölümde docgo Süper Kullanıcı kimlik bilgilerini kullanarak oturum açın (rootvePollsdb1). Yoklamalar altında, sorular ' ın yanındaki Ekle ' yi seçin ve bazı seçeneklerle bir yoklama sorusu oluşturun.http://<app-name>.azurewebsites.netSoruların artık kullanıcıya sunulduğunu onaylamak için ana Web sitesine () dönün. Bu soruları yanıtlayın, ancak veritabanında bazı veriler oluşturmak istersiniz.
Tebrikler! Linux için Azure App Service, etkin bir Postgres veritabanıyla bir Python Docgo Web uygulaması çalıştırıyorsunuz.
Sorun mu yaşıyorsunuz? Bize bilgi verin.
Not
App Service, varsayılan olarak oluşturulan her alt klasörde bir wsgi.py dosyası arayarak bir Docgo projesi algılar manage.py startproject . App Service bu dosyayı bulduğunda, Docgo Web uygulamasını yükler. Daha fazla bilgi için bkz. yerleşik Python görüntüsünü yapılandırma.
5. kod değişiklikleri yapın ve yeniden dağıtın
Bu bölümde, uygulamada yerel değişiklikler yapar ve kodu App Service yeniden dağıtabilirsiniz. İşleminde, devam eden işleri destekleyen bir Python sanal ortamı ayarlarsınız.
5,1 uygulamayı yerel olarak çalıştırma
Bir terminal penceresinde aşağıdaki komutları çalıştırın. Süper Kullanıcı oluştururken istemleri izlediğinizden emin olun:
# Configure the Python virtual environment
python3 -m venv venv
source venv/bin/activate
# Install dependencies
pip install -r requirements.txt
# Run Django migrations
python manage.py migrate
# Create Django superuser (follow prompts)
python manage.py createsuperuser
# Run the dev server
python manage.py runserver
Web uygulaması tam olarak yüklendikten sonra, Dmongo geliştirme sunucusu, "geliştirme sunucusu başlatılıyor" iletisinde yerel uygulama URL 'sini sağlar http://127.0.0.1:8000/ . CTRL-BREAK ile sunucudan çıkın.

Uygulamayı aşağıdaki adımlarla yerel olarak test edin:
http://localhost:8000"Hiçbir yoklama yok" iletisini görüntülemesi gereken bir tarayıcıda adresine gidin.http://localhost:8000/adminDaha önce oluşturduğunuz yönetici kullanıcıyı kullanarak adresine gidin ve oturum açın. Yoklamalar' ın altında, sorular ' ın yanındaki Ekle ' yi seçin ve bazı seçeneklerle bir yoklama sorusu oluşturun.Yeniden gidin
http://localhost:8000ve uygulamayı test etmek için soruyu yanıtlayın.CTRL C tuşlarına basarak Docgo sunucusunu durdurun + .
Yerel olarak çalıştırılırken, uygulama yerel bir SQLite3 veritabanı kullanıyor ve üretim veritabanınızı engellemez. İsterseniz üretim ortamınızın benzetimini yapmak için bir yerel PostgreSQL veritabanı da kullanabilirsiniz.
Sorun mu yaşıyorsunuz? Bize bilgi verin.
5,2 uygulamayı güncelleştirme
İçinde polls/models.py , ile başlayan satırı bulun choice_text ve max_length parametreyi 100 olarak değiştirin:
# Find this line of code and set max_length to 100 instead of 200
choice_text = models.CharField(max_length=100)
Veri modelini değiştirdiğiniz için yeni bir Docgo geçişi oluşturun ve veritabanını geçirin:
python manage.py makemigrations
python manage.py migrate
Geliştirme sunucusunu ile yeniden çalıştırın python manage.py runserver ve uygulamayı http: / /localhost: 8000/admin konumunda test edin:
Docgo Web sunucusunu CTRL + C ile yeniden durdurun.
Sorun mu yaşıyorsunuz? İlk olarak sorun giderme kılavuzunabaşvurun, aksi takdirde bize bilgi verin.
5,3 kodu Azure 'a yeniden dağıtın
Depo kökünde aşağıdaki komutu çalıştırın:
az webapp up
Bu komut . Azure/config dosyasında önbelleğe alınan parametreleri kullanır. App Service, uygulamanın zaten var olduğunu algıladığında kodu yeniden dağıtır.
Sorun mu yaşıyorsunuz? İlk olarak sorun giderme kılavuzunabaşvurun, aksi takdirde bize bilgi verin.
5,4 Azure 'da geçişleri yeniden çalıştırın
Veri modelinde değişiklikler yaptığınız için, App Service veritabanı geçişlerini yeniden çalıştırmanız gerekir.
' A giderek tarayıcıda bir SSH oturumu açın https://<app-name>.scm.azurewebsites.net/webssh/host . Sonra şu komutu çalıştırın:
python manage.py migrate
Sorun mu yaşıyorsunuz? İlk olarak sorun giderme kılavuzunabaşvurun, aksi takdirde bize bilgi verin.
5,5 üretim ortamında uygulamayı gözden geçirin
Uygulamayı yeniden inceleyin ( az webapp browse veya http://<app-name>.azurewebsites.net ' i kullanarak) ve uygulamayı üretimde yeniden test edin. (Yalnızca bir veritabanı alanının uzunluğunu değiştirdiğiniz için, değişiklik yalnızca bir soru oluştururken daha uzun bir yanıt girmeyi denerseniz fark edilir.)
Sorun mu yaşıyorsunuz? İlk olarak sorun giderme kılavuzunabaşvurun, aksi takdirde bize bilgi verin.
6. akış tanılama günlükleri
Azure 'da uygulamayı barındıran kapsayıcının içinden oluşturulan konsol günlüklerine erişebilirsiniz.
Günlük akışını görmek için aşağıdaki Azure CLı komutunu çalıştırın. Bu komut . Azure/config dosyasında önbelleğe alınmış parametreleri kullanır.
az webapp log tail
Konsol günlüklerini hemen görmüyorsanız, 30 saniye içinde yeniden kontrol edin.
Günlük akışını istediğiniz zaman durdurmak için CTRL + C yazın.
Sorun mu yaşıyorsunuz? Bize bilgi verin.
Not
Ayrıca, tarayıcıdan https://<app-name>.scm.azurewebsites.net/api/logs/docker adresine giderek günlük dosyalarını inceleyebilirsiniz.
az webapp up Varsayılan günlük kaydını etkinleştirir. Performans nedenleriyle, bu günlüğe kaydetme bir süre sonra devre dışı bırakır, ancak yeniden çalıştırdığınızda her seferinde geri döner az webapp up . El ile açmak için aşağıdaki komutu çalıştırın:
az webapp log config --docker-container-logging filesystem
7. Azure portal uygulamanızı yönetin
Azure Portal, uygulama adını arayın ve sonuçlarda uygulamayı seçin.

Varsayılan olarak, portal genel bir performans görünümü sağlayan uygulamanızın genel bakış sayfasını gösterir. Burada, gezinme, durdurma, yeniden başlatma ve silme gibi temel yönetim görevlerini de gerçekleştirebilirsiniz. Sayfanın sol tarafındaki sekmeler, açabileceğiniz farklı yapılandırma sayfalarını gösterir.

Sorun mu yaşıyorsunuz? İlk olarak sorun giderme kılavuzunabaşvurun, aksi takdirde bize bilgi verin.
8. Kaynakları Temizleme
Uygulamayı sürdürmek veya ek öğreticilere devam etmek isterseniz, sonraki adımlaraatlayın. Aksi takdirde, devam eden ücretleri önlemek için bu öğreticide oluşturulan kaynak grubunu silebilirsiniz:
az group delete --name Python-Django-PGFlex-rg --no-wait
Kaynak grubunu silerek, içinde yer alan tüm kaynakları serbest bırakabilir ve silebilirsiniz. Komutunu kullanmadan önce gruptaki kaynaklara artık ihtiyacınız olmadığından emin olun.
Tüm kaynakların silinmesi biraz zaman alabilir. --no-waitBağımsız değişkeni, komutun hemen dönmesini sağlar.
Sorun mu yaşıyorsunuz? Bize bilgi verin.
Sonraki adımlar
Uygulamanıza özel bir DNS adı eşlemeyi öğrenin:
App Service bir Python uygulamasını nasıl yürüttüğinizi öğrenin: