Dieser Artikel enthält häufig gestellte Fragen zu Azure Container Apps mit den zugehörigen Antworten.
Regionen
Wo finde ich die neuesten Informationen zu unterstützten Regionen in Azure Container Apps?
Eine Liste kann durch Ausführen des folgenden Azure CLI-Befehls generiert werden:
az provider show \
--namespace Microsoft.App \
--query "resourceTypes[?resourceType=='managedEnvironments'].locations"
Apis
Bietet Azure Container Apps direkten Zugriff auf die zugrunde liegende Kubernetes-API?
Nein, Azure Container-Apps bieten keinen direkten Zugriff auf die Kubernetes-API.
Kann ich meine Azure Container Apps-API aus dem Kontext von API Management importieren?
Ja, Sie können eine Azure-Container-Apps-API aus dem Kontext der API-Verwaltung importieren.
Abrechnung
Wie wird Azure Container Apps abgerechnet?
Die Abrechnung basiert auf dem Ressourcenverbrauch, einschließlich CPU, Arbeitsspeicher und Anforderungsanzahl. Weitere Informationen finden Sie auf der Abrechnungsseite .
Konfiguration
Kann ich GitHub Actions einrichten, um meinen Code automatisch in Azure Container Apps zu erstellen und bereitzustellen?
Ja. Sie können GitHub-Aktionen entweder über die Azure CLI oder das Azure-Portal konfigurieren:
Führen Sie mithilfe der Azure-Befehlszeilenschnittstelle
az containerapp github-action -h
aus, um die Optionen anzuzeigen.Navigieren Sie über das Azure-Portal zum Fenster „Kontinuierliche Bereitstellung“ unter Ihrer Container-App.
Warum unterscheidet sich die URL, die meine App empfängt, von der in der Anforderung angegebenen URL?
Azure Container Apps decodiert die URL, um Ihre App vor URL-Verwirrungsangriffen zu schützen. Eine Anforderungs-URL mit codierten Teilen, z. B. http://mysite.com/archive/http%3A%2F%2Fmysite.com%2Farchive%2F123
, wird als http://mysite.com/archive/http%3A/mysite.com/archive/123
an Ihre App gesendet.
Unterstützen Umgebungen, die nur für den Verbrauch bestimmt sind, benutzerdefinierte Routen?
Nur-Verbrauch-Umgebungen haben eingeschränkte Unterstützung für benutzerdefinierte Routen (UDRs). ExpressRoute wird nicht unterstützt. Eingeschränkte UDR-Unterstützung ist verfügbar, wenn sie wie folgt konfiguriert ist:
Eine Route muss mithilfe des
Azure.<REGION_NAME>
Diensttags mit next Hop = "Internet" definiert werden.Die Regeln für die Netzwerksicherheitsgruppe (Network Security Group, NSG) müssen ebenfalls wie in der NSG-Dokumentation beschrieben konfiguriert werden, um sicherzustellen, dass die Umgebung ordnungsgemäß funktioniert.
Diese Einschränkungen gelten nicht für Workloadprofile, und für die Unterstützung von UDR und Express Route werden Workloadprofilumgebungen verwendet.
Datenverwaltung
Wo speichert Azure Container Apps Kundendaten?
Azure Container Apps verschiebt oder speichert keine Kundendaten außerhalb der Region, in der es bereitgestellt ist.
Vorgaben
Wie kann ich eine Kontingenterhöhung anfordern?
Fordern Sie eine Kontingenterhöhung im Azure-Portal an, wobei Azure Container-Apps als Anbieter ausgewählt sind.
Berücksichtigen Sie beim Übermitteln einer Anforderung zur Erhöhung des Kontingents Folgendes:
Skalieren von Apps im Vergleich zu Umgebungen: Es gibt viele verschiedene Kontingente, die Sie erhöhen können. Verwenden Sie die folgenden Beschreibungen, um Ihre Anforderungen zu identifizieren:
- Erhöhen von Apps und Kernen pro Umgebung: Ermöglicht das Ausführen von mehr Apps in einer Umgebung und/oder von intensiveren Apps. Empfohlen, wenn Ihre Workloads innerhalb derselben Netzwerk- und Sicherheitsgrenzen bereitgestellt werden können.
- Erhöhen von Umgebungen: Empfohlen, wenn Ihre Workloads Netzwerk- oder Sicherheitsgrenzen benötigen. Hinweis: Ein detaillierter Geschäftskontext kann erforderlich sein, wenn Ihre Anforderung die Erhöhung von Kontingenten auf Umgebungsebene beinhaltet. Wenn Sie eine Änderung an Ihrem regionalen Umgebungskontingent anfordern, sollten Sie eine entsprechende Änderung Ihres globalen Umgebungskontingents anfordern.
Regionen: Genehmigungen für Erhöhungsanforderungen variieren je nach Computekapazität, die in Azure-Regionen verfügbar ist.
Spezifische Compute-Anforderungen: Die Plattform unterstützt 4 GB pro Container-App. Außerkraftsetzungen von Arbeitsspeichergrenzwerten werden fallweise bewertet.
Geschäftliche Begründungen für die Skalierung: Sie können eine Anforderung zur Erhöhung des Kontingents stellen, wenn die Grenzwerte der Plattform Ihre Workload-Anforderungen blockieren. Außerkraftsetzungen von Skalierungslimits werden fallweise bewertet.
Microservice-APIs unterstützt von Dapr
Welche Dapr-Funktionen und APIs sind in Azure Container Apps verfügbar?
Jede Dapr-Funktion wird einer gründlichen Bewertung unterzogen, um sicherzustellen, dass sie sich positiv auf Kund*innen auswirkt, die Microservices in der Azure Container Apps-Umgebung ausführen, und gleichzeitig die bestmögliche Erfahrung bietet.
Werden Dapr-Alpha-APIs und Ebene 2-Komponenten in Azure Container Apps unterstützt oder sind diese verfügbar?
Die Verfügbarkeit der Alpha-APIs von Dapr wird nicht garantiert oder von Microsoft unterstützt.
Während Komponenten der Ebene 1 vollständig unterstützt werden, werden Komponenten der Ebene 2 nach größter Mühe unterstützt. Weitere Informationen
Wie kann ich eine Dapr-Funktionserweiterung für Azure Container Apps anfordern?
Sie können über das Azure Container Apps GitHub Repository eine Anforderung für eine Funktion einreichen. Stellen Sie sicher, dass der Titel der Funktionsanforderung „Dapr“ enthält.
Warum wird mir „-msft.<number>“ als Version in meiner Container Apps-Umgebung angezeigt?
Während des Rollouts von 1.13.6-msft.1
in Produktionsregionen werden möglicherweise noch frühere Versionen (z. B. 1.12.5
oder 1.12.5-msft.6
) angezeigt. Das Suffix -msft.<number>
gibt die spezifischen Anpassungen von Azure Container Apps an, um Ihr Erlebnis zu verbessern.
Wie oft werden Dapr-Versionen für Azure Container Apps veröffentlicht?
Dapr-Versionen werden auf best-effort-Basis aktualisiert, wobei ein starker Fokus auf Stabilität, gründliche Tests und Minimierung der Kundenauswirkungen liegt. Das Ziel besteht darin, sicherzustellen, dass Updates nahtlos integriert werden, ohne dass Änderungen eingeführt werden.
Da Dapr-Versionsupdates automatisch angewendet werden, profitieren Sie immer von der sichersten Version. Dapr in Azure-Container-Apps folgt jedoch keinem festen Veröffentlichungszeitplan für neue Features. Stattdessen hängt die Veröffentlichung neuer Dapr-Versionen für neue Funktionen von der Priorisierung und Stabilität der Dapr-Binärdateien ab.
Hier finden Sie Updates und Releaseankündigungen für Dapr in Azure Container Apps in GitHub.
Kann ich in meiner Umgebung eine bestimmte Dapr-Version verwenden?
Die Auswahl benutzerdefinierter Versionen wird nicht unterstützt. Stattdessen erfolgt automatisch ein Upgrade Ihrer Umgebung, wobei die Integrität des vollständig verwalteten und serverlosen Angebots von Dapr in Azure Container Apps aufrechterhalten wird.
Bereitstellungen ohne Docker
Was ist eine-Bereitstellung ohne Docker?
Mit einer Bereitstellung ohne Docker können Sie Ihre Anwendung bereitstellen, ohne eine Dockerfile in Ihrem Code zu definieren. Stattdessen verwendet die Cloud Build-Funktionalität von Container Apps Buildpacks, um den Quellcode auf Ihrem lokalen Computer in ein Container-Image zu verwandeln. Diese Option verwendet die Standardregistrierung von Azure Container Apps.
Während der Bereitstellung meiner Anwendung ohne Docker erscheinen Meldungen zu „ImagePullBackOff on legion“, „Kubernetes-Fehler“ oder „Gateway-Fehler“ und meine Anwendung wird nicht erfolgreich bereitgestellt.
Bei Docker-weniger-Bereitstellungen ist ein bekanntes Problem aufgetreten. Ein erneuter Versuch könnte das Problem beheben. Wenn dieses Problem auftritt, erstellen Sie ein GitHub-Ticket, damit unser Team es untersuchen kann.
Bereitstellen von .NET-Anwendungen
Was geschieht, wenn meine .NET-Anwendung nicht skaliert werden kann?
Sie müssen den Schutz von Daten für alle .NET-Apps in Azure Container Apps aktivieren. Weitere Informationen finden Sie unter Bereitstellen und Skalieren einer ASP.NET Core-App in Azure Container Apps.
Bereitstellen von Java-Anwendungen
Welche JDK-Versionen werden unterstützt und wie kann ich die JDK-Version konfigurieren?
Container Apps unterstützt vier LTS JDK-Versionen: JDK 8, JDK 11, JDK 17 und JDK 21. Für die Erstellung von Quellcode ist die Standardversion JDK 17. Bei einem JAR-Datei-Build wird die JDK-Version aus dem Dateispeicherort META-INF\MANIFEST.MF im JAR gelesen, aber die Standard-JDK-Version 17 verwendet, wenn die angegebene Version nicht verfügbar ist.
Sie können die JDK-Version so konfigurieren, dass sie die Standardversion über Build-Umgebungsvariablen überschreibt.
Welche Java-Buildtools werden unterstützt?
Azure Container-Apps unterstützen derzeit Apache Maven als Java-Buildtool.
Wie kann ich einen Java-Imagebuild über Quellcode anpassen?
Sie können einen Java-Imagebuild über Build-Umgebungsvariablen anpassen.
Wie kann ich sicherstellen, dass der Build und das Image meines Builds ohne Docker in derselben Region wie meine App verfügbar sind?
Wenn Sie die Anwendung containerapp up
in Kombination mit einer Codebasis ohne Docker verwenden, benutzen Sie den Parameter --location
, damit die Anwendung an einem anderen Ort als USA, Osten aufgeführt werden kann.
Markierung
Wie verwende ich "latest" oder ein statisches Tag für mein Containerimage?
Vermeiden Sie statische Tags wie latest
für Containerimages. Die Verwendung statischer Tags kann zu Zwischenspeicherungsproblemen führen und die Problembehandlung ihrer App erschweren. Verwenden Sie stattdessen eindeutige Tags für jede Bereitstellung, z. B. einen Git-Hash oder ein Git-Hash oder ein Datum und eine Uhrzeit, um sicherzustellen, dass Updates ordnungsgemäß nachverfolgt und bereitgestellt werden.
OpenTelemetry
Welche Transportprotokolle unterstützt der verwaltete OpenTelemetry-Agent?
Der verwaltete Agent unterstützt nur gRPC.