Benutzerdefinierter Domänennamen und kostenlose verwaltete Zertifikate in Azure Container Apps

Azure Container Apps ermöglicht es Ihnen, eine oder mehrere benutzerdefinierte Domänen an eine Container-App zu binden. Sie können automatisch ein kostenloses verwaltetes Zertifikat für Ihre benutzerdefinierte Domäne konfigurieren.

Wenn Sie eine benutzerdefinierte Domäne mit Ihrem eigenen Zertifikat einrichten möchten, finden Sie weitere Informationen unter Benutzerdefinierte Domänennamen und Zertifikate in Azure Container Apps.

Hinweis

Wenn Sie ein DNS-Suffix für eine benutzerdefinierte Umgebung konfigurieren, können Sie Ihrer Container-App keine benutzerdefinierte Domäne hinzufügen, die dieses Suffix enthält.

Anforderungen für kostenlose Zertifikate

Azure Container Apps bietet ein kostenloses verwaltetes Zertifikat für Ihre benutzerdefinierte Domäne. Ohne dass Sie etwas unternehmen müssen, wird dieses TLS/SSL-Serverzertifikat automatisch erneuert, solange Ihre App weiterhin die Anforderungen für verwaltete Zertifikate erfüllt.

Folgende Anforderungen müssen erfüllt sein:

  • Aktivieren Sie den HTTP-Eingang, und stellen Sie sicher, dass Ihre Container-App öffentlich zugänglich ist.

  • Für Apex-Domänen muss ein A-Datensatz vorhanden sein, der auf die IP-Adresse Ihrer Container Apps-Umgebung verweist.

  • Richten Sie für Unterdomänen einen CNAME-Eintrag ein, der direkt dem automatisch generierten Domänennamen der Container-App zugeordnet ist. Die Zuordnung zu einem CNAME-Zwischenwert blockiert die Ausstellung und Verlängerung von Zertifikaten. Beispiele für CNAME-Werte sind Datenverkehrsmanager, Cloudflare und ähnliche Dienste.

Hinweis

Um sicherzustellen, dass die Zertifikatausstellung und nachfolgende Verlängerungen erfolgreich verlaufen, müssen alle Anforderungen jederzeit erfüllt sein, wenn das verwaltete Zertifikat zugewiesen wird.

Hinzufügen einer benutzerdefinierten Domäne und eines verwalteten Zertifikats

  1. Navigieren Sie im Azure-Portal zu Ihrer Container-App.

  2. Vergewissern Sie sich, dass für Ihre App der HTTP-Eingang aktiviert ist, indem Sie im Abschnitt Einstellungen die Option Eingang auswählen. Wenn der Eingang nicht aktiviert ist, aktivieren Sie ihn mit den folgenden Schritten:

    1. Legen Eingehender HTTP-Datenverkehr auf Aktiviert fest.
    2. Wählen Sie die gewünschte Einstellung für Eingehender Datenverkehr aus.
    3. Geben Sie den Zielport ein.
    4. Wählen Sie Speichern.
  3. Wählen Sie im Abschnitt Einstellungen die Option Benutzerdefinierte Domänen aus.

  4. Wählen Sie Benutzerdefinierte Domäne hinzufügen.

  5. Wählen Sie im Fenster Benutzerdefinierte Domäne und Zertifikat hinzufügen unter TLS/SSL-Zertifikat die Option Verwaltetes Zertifikat aus.

  6. Geben Sie in Domäne die Domäne ein, die Sie hinzufügen möchten.

  7. Wählen Sie den Typ des Hostnamenseintrags basierend auf dem Typ Ihrer Domäne aus.

    Domänentyp Datensatztyp Hinweise
    Apex-Domäne A-Eintrag Eine Apex-Domäne ist eine Domäne auf Stammebene Ihrer Domäne. Wenn Ihre DNS-Zone beispielsweise contoso.com lautet, ist contoso.com die Apex-Domäne.
    Unterdomäne CNAME Eine Unterdomäne ist eine Domäne, die Teil einer anderen Domäne ist. Wenn Ihre DNS-Zone beispielsweise contoso.com lautet, ist www.contoso.com ein Beispiel einer Unterdomäne, die in der Zone konfiguriert werden kann.
  8. Erstellen Sie mithilfe des DNS-Anbieters, der Ihre Domäne hostet, DNS-Einträge basierend auf dem Typ des Hostnamenseintrags, den Sie mit den im Abschnitt Domänenüberprüfung gezeigten Werten ausgewählt haben. Die Einträge verweisen die Domäne auf Ihre Container-App und überprüfen, ob Sie der Besitzer sind.

    • Wenn Sie A-Eintrag ausgewählt haben, erstellen Sie die folgenden DNS-Einträge:

      Eintragstyp Host Wert
      Ein @ Die IP-Adresse Ihrer Container Apps-Umgebung
      TXT asuid Den Domänenprüfcode
    • Wenn Sie CNAME ausgewählt haben, erstellen Sie die folgenden DNS-Einträge:

      Eintragstyp Host Wert
      CNAME Die Unterdomäne (z. B. www) Die automatisch generierte <appname>.<region>.azurecontainerapps.io-Domäne Ihrer Container-App
      TXT asuid. gefolgt von der Unterdomäne (z. B. asuid.www) Den Domänenprüfcode
  9. Wählen Sie Überprüfen aus.

  10. Wenn die Überprüfung erfolgreich war, wählen Sie Hinzufügen aus.

    Die Ausstellung des Zertifikats und das Hinzufügen der Domäne zu Ihrer Container-App können mehrere Minuten dauern.

  11. Sobald der Vorgang abgeschlossen ist, wird Ihr Domänenname in der Liste der benutzerdefinierten Domänen mit dem Status Gesichert angezeigt. Navigieren Sie zu Ihrer Domäne, um zu überprüfen, ob sie zugänglich ist.

Container Apps unterstützt Apex- und Unterdomänen. Jeder Domänentyp erfordert einen anderen DNS-Eintragstyp und eine andere Überprüfungsmethode.

Domänentyp Datensatztyp Prüfmethode Hinweise
Apex-Domäne A-Eintrag HTTP Eine Apex-Domäne ist eine Domäne auf Stammebene Ihrer Domäne. Wenn Ihre DNS-Zone beispielsweise contoso.com lautet, ist contoso.com die Apex-Domäne.
Unterdomäne CNAME CNAME Eine Unterdomäne ist eine Domäne, die Teil einer anderen Domäne ist. Wenn Ihre DNS-Zone beispielsweise contoso.com lautet, ist www.contoso.com ein Beispiel einer Unterdomäne, die in der Zone konfiguriert werden kann.
  1. Melden Sie sich mit der Azure-Befehlszeilenschnittstelle (CLI) bei Azure an:

    az login
    
  2. Installieren Sie als Nächstes die Azure Container Apps-Erweiterung für die CLI.

    az extension add --name containerapp --upgrade
    
  3. Vergewissern Sie sich, dass für Ihre Container-App der HTTP-Eingang aktiviert ist.

    az containerapp ingress show -n <CONTAINER_APP_NAME> -g <RESOURCE_GROUP_NAME>
    

    Wenn der Eingang nicht aktiviert ist, aktivieren Sie ihn mit den folgenden Schritten:

    az containerapp ingress enable -n <CONTAINER_APP_NAME> -g <RESOURCE_GROUP_NAME> \
            --type external --target-port <TARGET_PORT> --transport auto
    

    Ersetzen Sie <CONTAINER_APP_NAME> durch den Namen Ihrer Container-App, <RESOURCE_GROUP_NAME> durch den Namen der Ressourcengruppe mit Ihrer Container-App und <TARGET_PORT> durch den Port, an dem Ihre Container-App lauscht.

  4. Wenn Sie eine Apex-Domäne konfigurieren, rufen Sie die IP-Adresse Ihrer Container Apps-Umgebung ab.

    az containerapp env show -n <ENVIRONMENT_NAME> -g <RESOURCE_GROUP_NAME> -o tsv --query "properties.staticIp"
    

    Ersetzen Sie <ENVIRONMENT_NAME> durch den Namen Ihrer Umgebung und <RESOURCE_GROUP_NAME> durch den Namen der Ressourcengruppe mit Ihrer Umgebung.

  5. Wenn Sie eine Unterdomäne konfigurieren, rufen Sie die automatisch generierte Domäne Ihrer Container-App ab.

    az containerapp show -n <CONTAINER_APP_NAME> -g <RESOURCE_GROUP_NAME> -o tsv --query "properties.configuration.ingress.fqdn"
    

    Ersetzen Sie <CONTAINER_APP_NAME> durch den Namen Ihrer Container-App und <RESOURCE_GROUP_NAME> durch den Namen der Ressourcengruppe mit Ihrer Container-App.

  6. Rufen Sie den Domänenprüfcode ab.

    az containerapp show -n <CONTAINER_APP_NAME> -g <RESOURCE_GROUP_NAME> -o tsv --query "properties.customDomainVerificationId"
    

    Ersetzen Sie <CONTAINER_APP_NAME> durch den Namen Ihrer Container-App und <RESOURCE_GROUP_NAME> durch den Namen der Ressourcengruppe mit Ihrer Container-App.

  7. Erstellen Sie mithilfe des DNS-Anbieters, der Ihre Domäne hostet, DNS-Einträge basierend auf dem Eintragstyp, den Sie mit den im Abschnitt Domänenüberprüfung gezeigten Werten ausgewählt haben. Die Einträge verweisen die Domäne auf Ihre Container-App und überprüfen, ob Sie der Besitzer sind.

    • Wenn Sie eine Apex-Domäne konfigurieren, erstellen Sie die folgenden DNS-Einträge:

      Eintragstyp Host Wert
      Ein @ Die IP-Adresse Ihrer Container Apps-Umgebung
      TXT asuid Den Domänenprüfcode
    • Wenn Sie eine Unterdomäne konfigurieren, erstellen Sie die folgenden DNS-Einträge:

      Eintragstyp Host Wert
      CNAME Die Unterdomäne (z. B. www) Die automatisch generierte Domäne Ihrer Container-App
      TXT asuid. gefolgt von der Unterdomäne (z. B. asuid.www) Den Domänenprüfcode
  8. Fügen Sie der Container-App die Domäne hinzu.

    az containerapp hostname add --hostname <DOMAIN_NAME> -g <RESOURCE_GROUP_NAME> -n <CONTAINER_APP_NAME>
    

    Ersetzen Sie <DOMAIN_NAME> durch den Namen der Domäne, die Sie hinzufügen möchten, <RESOURCE_GROUP_NAME> durch den Namen der Ressourcengruppe mit Ihrer Container-App und <CONTAINER_APP_NAME> durch den Namen Ihrer Container-App.

  9. Konfigurieren Sie das verwaltete Zertifikat, und binden Sie die Domäne an Ihre Container-App.

    az containerapp hostname bind --hostname <DOMAIN_NAME> -g <RESOURCE_GROUP_NAME> -n <CONTAINER_APP_NAME> --environment <ENVIRONMENT_NAME> --validation-method <VALIDATION_METHOD>
    

    Ersetzen Sie <DOMAIN_NAME> durch den Namen der Domäne, die Sie hinzufügen möchten, <RESOURCE_GROUP_NAME> durch den Namen der Ressourcengruppe mit Ihrer Container-App, <CONTAINER_APP_NAME> durch den Namen Ihrer Container-App und <ENVIRONMENT_NAME> durch den Namen Ihrer Umgebung.

    • Wenn Sie einen A-Eintrag konfigurieren, ersetzen Sie <VALIDATION_METHOD> durch HTTP.
    • Wenn Sie einen CNAME-Eintrag konfigurieren, ersetzen Sie <VALIDATION_METHOD> durch CNAME.

    Die Ausstellung des Zertifikats und das Hinzufügen der Domäne zu Ihrer Container-App können mehrere Minuten dauern.

  10. Navigieren Sie nach Abschluss des Vorgangs zu Ihrer Domäne, um zu überprüfen, ob auf sie zugegriffen werden kann.

Nächste Schritte