Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makalede, Azure Developer CLI (azd) kullanırken ortaya çıkabilecek yaygın sorunların çözümleri sağlanır.
Yardım alın ve geri bildirimde bulunmak
Bu makalede aradığınızı bulamıyorsanız veya geri bildirim sağlamak istiyorsanız Azure Geliştirici CLI Tartışmaları'na sorular gönderebilirsiniz.
Azure Geliştirici CLI GitHub deposunda GitHub Sorunları'nı açarak da hataları bildirebilirsiniz.
--debug anahtarın kullanımı
ile azdçalışırken beklenmeyen bir sorunla karşılaşırsanız, daha fazla hata ayıklama ve tanılama çıktısını etkinleştirmek için anahtarıyla --debug komutu yeniden çalıştırın.
azd up --debug
Gelişmiş kullanılabilirlik için hata ayıklama çıkışını yerel bir metin dosyasına da gönderebilirsiniz. Bu yaklaşım, diğer izleme sistemlerinin hata ayıklamayı almalarını sağlar ve GitHub'da sorun oluştururken de yararlı olabilir.
Önemli
GitHub'da hata ayıklama günlüklerini gönderirken veya bunları diğer tanılama sistemlerine kaydederken hassas bilgileri yeniden işlemeyi unutmayın.
azd deploy --debug > "<your-file-path>.txt"
Dizin .azure
Azure Geliştirici CLI, dizinde .azure depolanan tüm dizinlerin Azure Geliştirici CLI ortamları olduğunu varsayar. Azure CLI yüklü bir kullanıcının giriş dizininden Azure Geliştirici CLI komutlarını çalıştırmayın.
Azure'da oturum açmadı veya belirtecin süresi Visual Studio'da doldu
Visual Studio'da çalıştırdıktan azd init -t <template-name> sonra şu hatayı alırsınız: "Uzak depoya erişmek için, OAuth Uygulamasını Visual Studioyeniden yetkilendirmeniz gerekir."
Çözüm
Erişim belirtecini yenilemek için komutunu çalıştırın azd auth login .
Azure hesabı izinleri azd içinde güncellenmesine rağmen yenilenmiyor
Varsayılan olarak, azd Azure kimlik bilgilerinizi ve izinlerinizi önbelleğe alır. Azure hesabınıza yeni roller ve izinler atanmışsa veya daha fazla aboneliğe eklenmişse, bu değişiklikler 'e azdhemen yansıtılamayabilir. Bu sorunu çözmek için oturumdan çıkın ve aşağıdaki komutları kullanarak azd'e tekrar giriş yapın:
azd auth logout
azd auth login
Oturum açma işlemini tamamlamak ve önbelleğe alınan kimlik bilgilerinizi güncelleştirmek için komuttaki azd auth login istemleri izleyin.
Cloud Shell için sınırlamalar azd
Cloud Shell'de çalıştırmayla azd ilgili bazı sınırlamalar vardır:
Cloud Shell'de Docker desteği
Cloud Shell, docker build daemon çalışmadığından docker veya run komutları çalıştırmayı desteklemez. Daha fazla bilgi için bkz. Cloud Shell Sorun Giderme.
Cloud Shell zaman aşımı
Cloud Shell uzun bir dağıtım veya uzun süre çalışan diğer görevler sırasında zaman aşımına uğrayabilir. Oturumun boşta kalmadığından emin olun. Bkz. Cloud Shell Kullanım sınırları.
Cloud Shell arabirimi
Cloud Shell öncelikli olarak bir komut satırı arabirimidir ve Visual Studio Code gibi tümleşik bir geliştirme ortamından daha az özelliğe sahiptir.
Cloud Shell'de Docker daemon'a bağlanılamıyor
Cloud Shell, kabuk ortamınızı barındırmak için bir kapsayıcı kullanır, bu nedenle Docker daemon'unun çalıştırılmasını gerektiren görevlere izin verilmez.
Cloud Shell'de farklı azd sürümünü yükleme
Bazı durumlarda, Cloud Shell'de kullanılmakta olan sürümden farklı bir sürümünün azd yüklenmesi gerekebilir. Bash'te bunu yapmak için:
- Klasörün mevcut olduğundan
mkdir -p ~/binemin olmak için komutunu çalıştırın~/bin - Yerel
mkdir -p ~/azdklasörün mevcut olduğundan emin olmak için komutunu çalıştırın~/azd - Çalıştır
curl -fsSL https://aka.ms/install-azd.sh | bash -s -- --install-folder ~/azd --symlink-folder ~/bin --version <version>(<version>varsayılan olarakstableolur, ancak1.0.0gibi özel bir yayın sürümü de belirtilebilir).
Yükleme tamamlandığında, azd içerisinde sembolik olarak bağlı olan sürüm, ~/bin içerisinde sembolik olarak bağlı olan azd sürümüne göre öncelikli hale gelir.
Bash'te Cloud Shell'de zaten yüklü olan azd sürümünü kullanmaya geri dönmek için:
-
rm ~/bin/azdkomutunu çalıştırın -
rm -rf ~/azdkomutunu çalıştırın
Çözüm
Docker daemon gerektiren görevleri gerçekleştirmek için başka bir konak kullanın. Cloud Shell sorun giderme belgelerinde açıklandığı gibi docker-machine kullanmak bir seçenektir.
Azure Bicep CLI gereksinimi
azd up ve azd provision Azure Bicep CLI'nın en son sürümünü gerektirir. Şu hata iletisini alabilirsiniz: "Hata: bicep şablonu derlenemiyor: Az PowerShell modülü bicep derlemesi çalıştırılamadı: çıkış kodu: 1, stdout: , stderr: UYARI: Yeni bir Bicep sürümü kullanılabilir: v0.4.1272."
Çözüm
Daha önce, Bicep'i yüklemek ve kullanmak azd için bir önkoşuldu.
azd şimdi Bicep'i yerel azd kapsamda (genel olarak değil) otomatik olarak yükler ve bu sorun artık çözülmelidir. Ancak, farklı bir sürüm kullanmak istiyorsanız ortam değişkenini ayarlayabilirsiniz: AZD_BICEP_TOOL_PATH ihtiyacınız olan sürümün konumunu işaret edebilir.
azd up veya azd provision başarısız oluyor
Bazen azd up veya azd provision ile işler ters gidebilir. Yaygın hatalar şunlardır:
- "Bölge kapasite dışında olduğundan Azure bölgesinde belirli kaynaklar sağlanamıyor."
- "İlgili kaynak sağlayıcısı bu bölgede yok."
Sorun giderme adımları, kök nedene bağlı olarak farklılık gösterebilir.
Çözüm
Azure portala gidin.
Kaynak grubunuzu, yani rg-<your-environment-name>, bulun.
Daha fazla bilgi edinmek için Dağıtımlar'ı seçin.
Ortam adınızla aynı ortam adını belirttiğinizden emin olun.
Etkilenen GitHub deposunun Eylemler sekmesine gidin ve daha fazla bilgi için işlem hattı çalıştırma sürecindeki kayıt dosyasını araştırın.
Diğer kaynaklar için bkz. Yaygın Azure dağıtım hatalarını giderme - Azure Resource Manager.
azd init gerektirir sudo
Öncesinde azd version = azure-dev-cli_0.2.0-beta.1, azd erişimi olan bir .azd klasörü oluştururdu drw-r--r--.
Bu veya herhangi bir Linux kurulumunda önceki bir sürüm kullanıldığında (WSL, ssh-remote, devcontainer, vb.) salt okunur modlu bir .azd klasör sağlandığından, bu bir soruna neden olur.
Çözüm
Önceden sağlanan
.azdklasörü el ile silin:rm -r ~/.azdazd initkomutunu çalıştırarak klasörü yeniden doğru erişim düzeyleriyle oluşturmak içinazdçalıştırın.
azd monitor geliştirme konteyneri için
azd monitor geliştirme ortamı olarak bir geliştirme kapsayıcısı kullanıyorsanız şu anda desteklenmemektedir.
Codespaces ortamlarında kimlik doğrulaması yapılamıyor
Codespaces'ta kimlik doğrulaması sorunlarıyla karşılaşıyorsanız Dockerfile şablonunun komutları içerdiğinden sudo apt-get update && sudo apt-get install xdg-utils emin olun. Komut xdg-utils , oturum açmanıza olanak tanıyan bir tarayıcı sekmesi açar.
Başarılı iletisine rağmen Statik Web Uygulamaları dağıtılamıyor.
Azure Static Web Apps'e dağıtırken, varsayılan azd up çıktısı eylemin başarılı olduğunu belirtebilir ancak değişikliklerin aslında dağıtılmadığı bilinen bir sorun vardır.
azd up komutunu, --debug bayrağı etkinleştirilmiş olarak çalıştırarak bu sorunu tanılayabilirsiniz. Çıkış günlüklerinde aşağıdaki iletiyi görebilirsiniz:
Preparing deployment. Please wait...
An unknown exception has occurred
GitHub eyleminden çalıştırıldığında azd büyük olasılıkla bu sorunla karşılaşırsınız. Geçici bir çözüm olarak, sitenizi derledikten sonra derleme klasörüne kopyalayın staticwebapp.config.json . Bu adımı, azd komut iş akışlarının çeşitli noktalarında özel betikler yürütmenizi sağlayan bir prepackage veya predeploy komut kancası kullanarak otomatikleştirebilirsiniz.
Ürün ekibi bu sorunu çözmek için çalışıyor.
GitHub Actions hatası - "Anahtar kasası üzerinde gizli verileri alma izni yok"
Yerel ortamda ve GitHub Actions'ta kaynakları sağlarken aynı ortam veya kaynak grubu adını paylaşmak, Anahtar Kasası hizmetinden Does not have secrets get permission on key vault.. hatasına neden olabilir. Key Vault, Bicep aracılığıyla artımlı izin güncelleştirmelerini desteklemez. Bu, GitHub Actions iş akışının yerel kullanıcının Erişim İlkesi izinlerinin üzerine yazıldığı anlamına gelir.
Bu sorunun önerilen çözümü, yerel geliştirme ve GitHub Actions iş akışları için ayrı ortam adları kullanmaktır.
Birden çok ortam kullanma ve azd env komutu hakkında daha fazla bilgiyi SSS sayfasında okuyun.
Metin tabanlı tarayıcı desteği
Metin tabanlı tarayıcılar şu anda tarafından azd monitordesteklenmemektedir.
azd pipeline config Windows'da Java için AzDo şablonlarını kullanma
Windows'da Java şablonları için AzDo ile çalışırken azd pipeline config hatayla karşılaşabilirsiniz. Örneğin, şunları yaptınız:
Windows'da aşağıdakileri çalıştırın:
azd init --template Azure-Samples/todo-java-mongo azd pipeline configAşağıdaki hata alındı:
Çözüm
Bu bilinen bir sorundur. Bu sorunu giderirken aşağıdaki komutu deneyin:
git update-index --chmod=+x src/api/mvnw && git commit -m "Fix executable bit permissions" && git push
failed packaging service 'api': failed invoking action 'package', failed to run NPM script build, signal: segmentation fault Apple Silicon (M1/M2) üzerinde azd yükseltme sonrası hata
Bazı durumlarda, azd x86_64 sürümünden ARM64 ikili dosyasına yükseltme, x86_64 sürümüyle oluşturulmuş şablonlar için hatalara neden olabilir azd. Bunun nedeni, şablonun bir ARM64 işlemine x86_64 altında oluşturulan bayt kodunu yüklemeye çalışabilecek bir sürümünü v8-compile-cache kullanmasıdır.
Bu sorunu düzeltmek için etkilenen projedeki paketi yükseltin v8-compile-cache :
- Başarısız olan hizmetin dizinine geçin (
src/apidurumundafailed packaging service 'api') -
npm upgrade v8-compile-cachekomutunu çalıştırın - Depo dizininin köküne gidin ve
azdkomutunu (örn.azd packageveyaazd up) yeniden çalıştırın.
azd pipeline config koşullu erişim ilkesinden kaynaklanan hata
komutunu çalıştırırken azd pipeline configaşağıdaki gibi bir hata alabilirsiniz:
ERROR: failed to create or update service principal: failed retrieving application list, failed executing request: http call(https://login.microsoftonline.com/common/oauth2/v2.0/token)(POST) error: reply status code was 400:
{"error":"invalid_grant","error_description":"AADSTS50005: User tried to log in to a device from a platform (Unknown) that's currently not supported through Conditional Access policy. Supported device platforms are: iOS, Android, Mac, and Windows flavors.\r\nTrace ID: 0000aaaa-11bb-cccc-dd22-eeeeee333333\r\nCorrelation ID: aaaa0000-bb11-2222-33cc-444444dddddd\r\nTimestamp: 2022-12-16 21:10:37Z","error_codes":[50005],"timestamp":"2022-12-16 21:10:37Z","trace_id":"0000aaaa-11bb-cccc-dd22-eeeeee333333","correlation_id":"aaaa0000-bb11-2222-33cc-444444dddddd"}
Bu hata, Microsoft Entra kiracınızın Koşullu Erişim İlkelerini etkinleştirmesi ile ilgilidir. Belirli ilke, desteklenen bir cihaz platformunda oturum açmanızı gerektirir.
Microsoft Entra ID'nin cihaz platformunuzu doğru algılamasını engelleyen cihaz kodu mekanizması kullanılarak oturum açmış olmanız nedeniyle de bu hatayı alıyor olabilirsiniz.
Çözüm
İş akışını yapılandırmak için GitHub'a sizin adınıza Azure'da dağıtma izni vermeniz gerekir. adlı AZURE_CREDENTIALSbir GitHub gizli dizisinde depolanan bir Azure Hizmet Sorumlusu oluşturarak GitHub'a yetki ver. Adımlar için Codespace konağınızı seçin:
Hata iletisine göre desteklenen olarak listelenen bir cihazda çalıştırdığınızdan emin olun.
Bayrağı
azd auth logineklenmiş olarak yeniden çalıştırın--use-device-code=false:azd auth login --use-device-code=falseOturum açtıktan sonra ileti
localhost refused to connectile bir hata alabilirsiniz. Öyleyse:- URL'yi kopyalayın.
- Yeni bir Codespaces terminalinde (tırnak içinde URL) çalıştırın
curl '<pasted url>'.
Özgün terminalde oturum açma işlemi artık başarılı olmalıdır.
Oturum açtıktan sonra komutunu yeniden çalıştırın
azd pipeline config.
Geçerli Dockerfile yerine önbelleğe alınmış Dockerfile kullanıldı
Docker ile yerel geliştirme ortamınızda kullanırken azd Docker, geçerli sürüm yerine Dockerfile'ınızın önbelleğe alınmış sürümünü kullanabilir. Bu, dağıtımın yanlış bilgi içeren bir kapsayıcı kullanarak sonuçlandırılmasına neden olur.
Çözüm
Kapsayıcıyı derlemek için Azure Geliştirici CLI tarafından kullanılan yerel Docker yüklemenizi yapılandırmak için Docker'ı aşağıdaki ortam değişkenleriyle yapılandırmanız gerekir:
DOCKER_BUILDKIT=1
DOCKER_BUILD_ARGS="--no-cache"
ayarlarınızı azd up şu ayarları içerecek şekilde değiştirebilirsiniz:
DOCKER_BUILDKIT=1 DOCKER_BUILD_ARGS="--no-cache" azd up
azd pipeline config destek
azd pipeline config şu anda DevContainers/VS Code Uzak Kapsayıcılar'da desteklenmiyor.
Özellik oluşturma hataları
azd Oluşturma özelliği yalnızca belirli proje türleri için kullanılabilir. veya gibi azd addazd infra gen oluşturma komutlarını desteklenmeyen bir bağlamda kullanmaya çalışırsanız, aşağıdaki hatalarla karşılaşabilirsiniz.
Uyumsuz proje
azd add komutunu çalıştırdığınızda ERROR: incompatible project mesajı görürseniz, üzerinde çalıştığınız projenin türünü denetleyin.
azd add Komutu .NET Aspire projeleri veya zaten tanımlanmış bir infra klasörü olan şablonlar için azd desteklenmez. Bu proje türleriyle azd add kullanmaya çalışmak, şu tür hatalara yol açar:
HATA: uyumsuz proje tespit edildi: Aspire uygulama sunucusu bulundu
HATA: uyumsuz proje: kaynak olmadan infra directory ve azure.yaml bulundu
Proje, altyapıyı oluşturmaya yönelik bir bileşen içermiyor.
Hata ERROR: this project does not contain any infrastructure to generate şu durumlarda oluşur:
- Projenizde tanımlı herhangi bir bileşen kaynağı olmadan
azd infra gençalıştırabilirsiniz. - Geçerli dizinde Aspire Uygulama Konağı algılanamıyorsa, bu hata .NET Aspire projelerinde de meydana gelebilir.
Bu hatayı çözmek için komutunu kullanarak azd add çalıştırmadan azd infra gen önce yeni kaynaklar ekleyin veya .NET Aspire projenizin doğru yapılandırıldığından emin olun.
Azure kaynağını çözümleme hatası
Komut azd show <name> şu hatayla başarısız olabilir: ERROR: resolving '<name>': AZURE_RESOURCE_<NAME>_ID is not set as an output variable. Bunun çeşitli nedenleri olabilir:
- Kaynak
<name>, kaynaklar düğümünün altındaazure.yamliçinde mevcut değil. - Kaynak
<name>henüz sağlanmadı.
Çözüm
Kaynakları sağlamak için komutunu çalıştırın azd up . Öncelikle kaynağı <name> içeren güncellenmiş Bicep'i oluşturmak için azd infra gen komutunu çalıştırmanız, ardından azd up komutunu çalıştırmanız gerekebilir.
Python için canlı ölçüm desteği
Canlı Ölçümler (azd monitor --live) şu anda Python uygulamaları için desteklenmemektedir. Daha fazla bilgi için, bkz. Canlı Ölçümler: 1 saniyelik gecikme süresiyle izleme ve tanılama.
Yardım istemek için GitHub sorunu oluşturma
Azure Geliştirici CLI'sı ve Azure Geliştirici CLI Visual Studio Code uzantısı hataları ve özellik isteklerini izlemek için GitHub Sorunları'nı kullanır. Yinelenenleri önlemek için yeni sorunları dosyalamadan önce lütfen mevcut sorunları arayın.
Bu projeyi kullanma hakkında yardım ve sorular için, katkıda bulunmak istiyorsanız lütfen Azure Geliştirici CLI'sini kullanmaya yönelik wiki'mize ve CONTRIBUTING belgemize bakın.