Verwalten von Umgebungsvariablen in Azure Container Apps
Artikel
In Azure Container Apps können Laufzeitumgebungsvariablen festgelegt werden. Diese Variablen können als manuelle Einträge oder als Verweise auf Geheimnisse festgelegt werden.
Diese Umgebungsvariablen werden zur Laufzeit in Ihre Container-App geladen.
Konfigurieren von Umgebungsvariablen
Sie können die Umgebungsvariablen beim Erstellen der Container-App oder später durch Erstellen einer neuen Revision konfigurieren.
Hinweis
Um Verwechslungen zu vermeiden, sollten Umgebungsvariablen nicht dupliziert werden. Wenn mehrere Umgebungsvariablen den gleichen Namen haben, wird die letzte in der Liste verwendet.
Wenn Sie eine neue Container-App über das Azure-Portal erstellen, können Sie die Umgebungsvariablen im Abschnitt „Container“ einrichten:
Sie können den Befehl az containerapp create verwenden und die Umgebungsvariablen unter Verwendung des Parameters --env-vars als durch Leerzeichen getrennte Schlüssel-Wert-Einträge im Format „Schlüssel=Wert“ übergeben, um Ihre Container-App mit Umgebungsvariablen zu erstellen.
Wenn Sie auf ein Geheimnis verweisen möchten, muss das gewünschte Geheimnis bereits erstellt worden sein. Weitere Informationen finden Sie unter Verwalten von Geheimnissen. Sie können den Geheimnisnamen verwenden und an das Wertfeld übergeben. Hierbei muss jedoch secretref: vorangestellt werden:
Zur Verwendung dieses Cmdlets müssen Sie den Namen der Umgebungsvariablen mithilfe des Parameters -Name und den Wert mithilfe des Parameters -Value übergeben.
Wenn Sie auf ein Geheimnis verweisen möchten, muss das gewünschte Geheimnis bereits erstellt worden sein. Weitere Informationen finden Sie unter Verwalten von Geheimnissen. Sie können den Geheimnisnamen verwenden und an den Parameter -SecretRef übergeben:
In diesem Cmdlet müssen Sie mithilfe des Parameters -Name den Namen des gewünschten Containerimage (nicht den Namen der Container-App) und mithilfe des Parameters -Image den vollqualifizierten Imagenamen übergeben sowie auf das Umgebungsobjekt verweisen, das Sie zuvor für die Variable $envVar definiert haben.
Beachten Sie, dass es noch weitere Einstellungen gibt, die ggf. innerhalb des Vorlagenobjekts definiert werden müssen, um zu vermeiden, dass sie überschrieben werden (beispielsweise Ressourcen, Volumebereitstellungen und Ähnliches). Lesen Sie die vollständige Dokumentation zu dieser Vorlage unter New-AzContainerAppTemplateObject.
Abschließend können Sie Ihre Container-App mithilfe des PowerShell-Cmdlets Update-AzContainerApp basierend auf dem neuen, von Ihnen erstellten Vorlagenobjekt aktualisieren.
In diesem letzten Cmdlet müssen Sie lediglich mithilfe des Parameters -TemplateContainer das Vorlagenobjekt übergeben, das Sie im vorherigen Schritt für die Variable $containerTemplate definiert haben.
Hinzufügen von Umgebungsvariablen in vorhandenen Container-Apps
Nachdem die Container-App erstellt wurde, besteht die einzige Möglichkeit zum Aktualisieren der Container-App-Umgebungsvariablen darin, eine neue Revision mit den erforderlichen Änderungen zu erstellen.
Suchen Sie im Azure-Portal nach „Container Apps“, und wählen Sie Ihre App aus.
Wählen Sie im linken Menü der App „Revisionen und Replikate“ > „Neue Revision erstellen“ aus.
Bearbeiten Sie anschließend das aktuelle Containerimage:
Im Abschnitt „Umgebungsvariablen“ können Sie auf „Hinzufügen“ klicken, um neue Umgebungsvariablen hinzuzufügen.
Legen Sie dann den Namen der Umgebungsvariablen und die Quelle fest (kann ein Verweis auf ein Geheimnis sein).
Wenn Sie die Quelle als manuelle Quelle konfigurieren, können Sie den Wert der Umgebungsvariablen manuell eingeben.
Sie können Ihre Container-App mithilfe des Befehls az containerapp update aktualisieren.
In diesem Beispiel wird eine Umgebungsvariable mit einem manuellen Wert erstellt (und nicht auf ein Geheimnis verwiesen). Ersetzen Sie die <PLATZHALTER> durch Ihre Werte.
Wenn Sie mehrere Umgebungsvariablen erstellen möchten, können Sie durch Leerzeichen getrennte Werte im Format „Schlüssel=Wert“ einfügen.
Wenn Sie auf ein Geheimnis verweisen möchten, muss das gewünschte Geheimnis bereits erstellt worden sein. Weitere Informationen finden Sie unter Verwalten von Geheimnissen. Sie können den Geheimnisnamen verwenden und an das Wertfeld übergeben. Hierbei muss jedoch secretref: vorangestellt werden, wie im folgenden Beispiel zu sehen:
Ähnlich wie beim Erstellen einer neuen Container-App müssen Sie ein Objekt namens EnvironmentVar erstellen, das in einem Container enthalten ist. Dieser Container wird dann mit dem PowerShell-Cmdlet New-AzContainerApp verwendet.
In diesem Cmdlet müssen Sie lediglich das zuvor definierte Vorlagenobjekt übergeben, wie im Abschnitt Konfigurieren von Umgebungsvariablen beschrieben.
Azure Container Apps fügen automatisch Umgebungsvariablen hinzu, mit denen Ihre Apps und Aufträge Plattformmetadaten während der Laufzeit abrufen können.
Apps
Die folgenden Variablen sind für Container Apps verfügbar:
Variablenname
Beschreibung
Beispielswert
CONTAINER_APP_NAME
Der Name der Container-App.
my-containerapp
CONTAINER_APP_REVISION
Der Name der Container App-Revision.
my-containerapp--20mh1s9
CONTAINER_APP_HOSTNAME
Der revisionsspezifische Hostname der Container App.
Das DNS-Suffix für die Container Apps-Umgebung. Um den vollqualifizierten Domänennamen (Fully Qualified Domain Name, FQDN) der App abzurufen, fügen Sie den App-Namen an das DNS-Suffix im Format $CONTAINER_APP_NAME.$CONTAINER_APP_ENV_DNS_SUFFIX an.
<DEFAULT_HOSTNAME>.<REGION>.azurecontainerapps.io
CONTAINER_APP_PORT
Der Zielport der Container App.
8080
CONTAINER_APP_REPLICA_NAME
Der Name des Container App-Replikats.
my-containerapp--20mh1s9-86c8c4b497-zx9bq
Aufträge
Die folgenden Variablen sind für Container Apps-Aufträge verfügbar: