Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
V tomto článku se dozvíte, jak se připojit přímo ze služby Azure Front Door ke službě Azure Container Apps pomocí privátního propojení místo veřejného internetu. V tomto kurzu vytvoříte prostředí profilů úloh Azure Container Apps, službu Azure Front Door a bezpečně je připojíte prostřednictvím privátního propojení. Pak ověříte připojení mezi vaší aplikací kontejneru a službou Azure Front Door.
Požadavky
Účet Azure s aktivním předplatným.
- Pokud jej nemáte, můžete si jej zdarma vytvořit.
Tato funkce je podporovaná jenom pro prostředí profilu úloh.
Ujistěte se, že je
Microsoft.Cdn
poskytovatel prostředků zaregistrovaný pro vaše předplatné.- Začněte tím, že se přihlásíte do portálu Azure.
- Přejděte na stránku předplatného a vybertePoskytovatele prostředků>.
- V seznamu zprostředkovatelů vyberte Microsoft.Cdn .
- Vyberte Zaregistrovat.
Vytvoření aplikace typu kontejner
Vytvořte skupinu prostředků pro uspořádání služeb souvisejících s nasazením kontejnerové aplikace.
Na horním panelu hledání vyhledejte Container Apps .
Ve výsledcích hledání vyberte Kontejnerové aplikace.
Vyberte tlačítko Vytvořit.
Na stránce Vytvořit aplikaci kontejneru na kartě Základy proveďte následující akce.
Nastavení Činnost Předplatné Vyberte své předplatné Azure. Skupina zdrojů Vyberte odkaz Vytvořit novou skupinu prostředků a zadejte my-container-apps. Název kontejnerové aplikace Zadejte my-container-app. Zdroj nasazení Vyberte image kontejneru. Región Vyberte USA – střed. V poli Vytvořit prostředí Container Apps vyberte odkaz Vytvořit nové prostředí .
Na stránce Vytvořit prostředí Container Apps na kartě Základy zadejte následující hodnoty:
Nastavení Hodnota Název prostředí Zadejte moje prostředí. Zónová redundance Vyberte Zakázáno. Vyberte kartu Sítě.
Nastavte přístup k veřejné síti tak , aby se zakázal: Zablokuje veškerý příchozí provoz z veřejného internetu.
Ponechte možnost Použít vlastní virtuální síť nastavenou na Ne.
Možnost Povolit privátní koncové body ponechte nastavenou na Ne.
Vyberte Vytvořit.
Na stránce Vytvořit aplikaci kontejneru vyberte kartu Kontejner .
Vyberte Použít obrázek rychlého startu.
Nasazení aplikace typu kontejner
Vyberte Zkontrolovat a vytvořte v dolní části stránky.
Pokud se nenašly žádné chyby, tlačítko Vytvořit je povolené.
Pokud dojde k chybám, označí se všechny karty obsahující chyby červenou tečkou. Přejděte na příslušnou kartu. Pole obsahující chybu jsou červeně zvýrazněná. Po opravení všech chyb vyberte Zkontrolovat a vytvořit znovu.
Vyberte Vytvořit.
Zobrazí se stránka se zprávou Probíhá nasazení . Po úspěšném dokončení nasazení se zobrazí zpráva: Vaše nasazení je dokončené.
Ověření nasazení
Výběrem možnosti Přejít k prostředku zobrazíte novou aplikaci kontejneru.
Vyberte odkaz vedle adresy URL aplikace a zobrazte aplikaci.
Když přejdete na koncový bod aplikace kontejneru, zobrazí se následující zpráva:
The public network access on this managed environment is disabled. To connect to this managed environment, please use the Private Endpoint from inside your virtual network. To learn more https://aka.ms/PrivateEndpointTroubleshooting.
Místo toho použijete koncový bod služby Azure Front Door pro přístup k aplikaci kontejneru.
Vytvoření profilu a koncového bodu služby Azure Front Door
Vyhledejte Front Door v horním panelu vyhledávání.
Ve výsledcích hledání vyberte profily služby Front Door a CDN .
Vyberte Azure Front Door a Rychlé vytvoření.
Vyberte tlačítko Pokračovat, abyste vytvořili _Front Door_.
Na stránce Vytvořit profil služby Front Door na kartě Základy proveďte následující akce.
Nastavení Akce Skupina zdrojů Vyberte my-container-apps. Název Zadejte my-afd-profile. Úroveň Vyberte Premium. Private Link není podporován pro zdroje služby Azure Front Door na úrovni Standard. Název koncového bodu Zadejte my-afd-endpoint. Typ původu Vyberte Kontejnerové aplikace. Název hostitele původu Zadejte název hostitele vaší aplikace kontejneru. Název hostitele vypadá jako v následujícím příkladu: my-container-app.orangeplant-77e5875b.centralus.azurecontainerapps.io
.Povolení služby Private Link Povolte toto nastavení. Región Vyberte USA – střed. Cílový podzdroj Vyberte managedEnvironments. Žádost o zprávu Zadejte požadavek AFD Private Link. Vyberte možnost Zkontrolovat a vytvořit.
Vyberte Vytvořit.
Po dokončení nasazení vyberte Přejít k prostředku.
Na stránce přehledu profilu služby Front Door a CDN vyhledejte název hostitele koncového bodu. Vypadá to jako v následujícím příkladu. Poznamenejte si tento název hostitele.
my-afd-endpoint.<HASH>.b01.azurefd.net
Schválení žádosti o připojení privátního koncového bodu
Přejděte na stránku přehledu pro prostředí s názvem my-environment , které jste vytvořili dříve.
Rozbalte položku Sítě nastavení>.
Zobrazí se odkaz na žádosti o připojení privátního koncového bodu. Například:
1 private endpoint
. Vyberte tento odkaz.Na stránce připojení privátního koncového bodu schvalte každou žádost o připojení privátního koncového bodu s popisem
AFD Private Link Request
.Poznámka:
Azure Front Door má známý problém, kdy může vytvořit více žádostí o připojení privátního koncového bodu.
Přístup k aplikaci kontejneru z Azure Front Dooru
Přejděte na název hostitele koncového bodu služby Azure Front Door, který jste si poznamenali dříve. Vidíte výstup obrazu kontejnerové aplikace pro rychlý start. Globální nasazení může trvat několik minut, takže pokud nevidíte očekávaný výstup, počkejte několik minut a poté obnovte.
Uvolnění prostředků
Pokud tuto aplikaci nebudete dál používat, můžete odstranit aplikaci kontejneru a všechny přidružené služby odebráním skupiny prostředků.
V části Přehled vyberte skupinu prostředků my-container-apps.
V horní části přehledu skupiny prostředků vyberte tlačítko Odstranit skupinu prostředků.
Zadejte název skupiny prostředků my-container-apps v potvrzovací dialogovém okně "my-container-apps" .
Vyberte Odstranit.
Dokončení procesu odstranění skupiny prostředků může trvat několik minut.
Požadavky
Účet Azure s aktivním předplatným.
- Pokud jej nemáte, můžete si jej zdarma vytvořit.
Pokud chcete zajistit, že používáte nejnovější verzi Azure CLI, spusťte následující příkaz.
az upgrade
Nejnovější verze rozšíření Azure Container Apps pro Azure CLI Pokud chcete zajistit, že používáte nejnovější verzi, spusťte následující příkaz.
az extension add --name containerapp --upgrade --allow-preview true
Poznámka:
Od května 2024 už rozšíření Azure CLI ve výchozím nastavení nepovolují funkce ve verzi Preview. Pokud chcete získat přístup k funkcím Container Apps ve verzi náhledu, nainstalujte rozšíření Container Apps pomocí
--allow-preview true
.Tato funkce je podporovaná jenom pro prostředí profilu úloh.
Tato funkce je dostupná jenom v podporovaných oblastech.
Další informace o požadavcích a nastavení najdete v tématu Rychlý start: Nasazení první aplikace kontejneru s využitím containerapp upu.
Nastavení proměnných prostředí
Nastavte následující proměnné prostředí.
RESOURCE_GROUP="my-container-apps"
LOCATION="centralus"
ENVIRONMENT_NAME="my-environment"
CONTAINERAPP_NAME="my-container-app"
AFD_PROFILE="my-afd-profile"
AFD_ENDPOINT="my-afd-endpoint"
AFD_ORIGIN_GROUP="my-afd-origin-group"
AFD_ORIGIN="my-afd-origin"
AFD_ROUTE="my-afd-route"
Vytvořte skupinu prostředků Azure
Vytvořte skupinu prostředků pro uspořádání služeb souvisejících s nasazením kontejnerové aplikace.
az group create \
--name $RESOURCE_GROUP \
--location $LOCATION
Vytvořit prostředí
Vytvořte prostředí Container Apps.
az containerapp env create \ --name $ENVIRONMENT_NAME \ --resource-group $RESOURCE_GROUP \ --location $LOCATION
Získejte ID prostředí. Toto ID použijete ke konfiguraci prostředí.
ENVIRONMENT_ID=$(az containerapp env show \ --resource-group $RESOURCE_GROUP \ --name $ENVIRONMENT_NAME \ --query "id" \ --output tsv)
Zakažte veřejný přístup k síti v prostředí.
az containerapp env update \ --id $ENVIRONMENT_ID \ --public-network-access Disabled
Nasazení aplikace typu kontejner
Spuštěním následujícího příkazu nasaďte aplikaci kontejneru ve vašem prostředí.
az containerapp up \ --name $CONTAINERAPP_NAME \ --resource-group $RESOURCE_GROUP \ --location $LOCATION \ --environment $ENVIRONMENT_NAME \ --image mcr.microsoft.com/k8se/quickstart:latest \ --target-port 80 \ --ingress external \ --query properties.configuration.ingress.fqdn
Načtěte koncový bod vaší kontejnerové aplikace.
ACA_ENDPOINT=$(az containerapp show \ --name $CONTAINERAPP_NAME \ --resource-group $RESOURCE_GROUP \ --query properties.configuration.ingress.fqdn \ --output tsv)
Když přejdete ke koncovému bodu aplikace kontejneru, obdržíte
ERR_CONNECTION_CLOSED
, protože prostředí aplikace kontejneru má zakázaný veřejný přístup. Místo toho použijete koncový bod AFD pro přístup k vaší aplikaci kontejneru.
Vytvoření profilu služby Azure Front Door
Ujistěte se, že je
Microsoft.Cdn
poskytovatel prostředků zaregistrovaný pro vaše předplatné.az provider register --namespace Microsoft.Cdn
Vytvořte profil AFD. Private Link není podporován pro původy v profilu AFD s SKU
Standard_AzureFrontDoor
.
az afd profile create \
--profile-name $AFD_PROFILE \
--resource-group $RESOURCE_GROUP \
--sku Premium_AzureFrontDoor
Vytvoření koncového bodu služby Azure Front Door
Přidejte koncový bod do profilu AFD.
az afd endpoint create \
--resource-group $RESOURCE_GROUP \
--endpoint-name $AFD_ENDPOINT \
--profile-name $AFD_PROFILE \
--enabled-state Enabled
Vytvoření skupiny původu služby Azure Front Door
Vytvořte zdrojovou skupinu AFD.
az afd origin-group create \
--resource-group $RESOURCE_GROUP \
--origin-group-name $AFD_ORIGIN_GROUP \
--profile-name $AFD_PROFILE \
--probe-request-type GET \
--probe-protocol Http \
--probe-interval-in-seconds 60 \
--probe-path / \
--sample-size 4 \
--successful-samples-required 3 \
--additional-latency-in-milliseconds 50
Vytvoření zdroje služby Azure Front Door
Přidejte zdroj AFD do skupiny zdrojů.
az afd origin create \
--resource-group $RESOURCE_GROUP \
--origin-group-name $AFD_ORIGIN_GROUP \
--origin-name $AFD_ORIGIN \
--profile-name $AFD_PROFILE \
--host-name $ACA_ENDPOINT \
--origin-host-header $ACA_ENDPOINT \
--priority 1 \
--weight 500 \
--enable-private-link true \
--private-link-location $LOCATION \
--private-link-request-message "AFD Private Link Request" \
--private-link-resource $ENVIRONMENT_ID \
--private-link-sub-resource-type managedEnvironments
Seznam připojení privátních koncových bodů
Spuštěním následujícího příkazu zobrazte seznam připojení privátního koncového bodu pro vaše prostředí.
az network private-endpoint-connection list \ --name $ENVIRONMENT_NAME \ --resource-group $RESOURCE_GROUP \ --type Microsoft.App/managedEnvironments
Zaznamenejte si ID prostředku připojení privátního koncového bodu z odpovědi. Připojení privátního koncového bodu
properties.privateLinkServiceConnectionState.description
má hodnotuAFD Private Link Request
. ID prostředku připojení privátního koncového bodu je následující./subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.App/managedEnvironments/my-environment/privateEndpointConnections/<PRIVATE_ENDPOINT_CONNECTION_ID>
Nezaměňujte toto ID s ID privátního koncového bodu, které vypadá takto.
/subscriptions/<SUBSCRIPTION_ID>/resourceGroups/eafd-Prod-centralus/providers/Microsoft.Network/privateEndpoints/<PRIVATE_ENDPOINT_ID>
Schválit připojení privátního koncového bodu
Pokud chcete připojení schválit, spusťte následující příkaz. Nahraďte <zástupný symbol> za ID prostředku připojení privátního koncového bodu, které jste si poznamenali v předchozí části.
az network private-endpoint-connection approve --id <PRIVATE_ENDPOINT_CONNECTION_RESOURCE_ID>
Přidat trasu
Spuštěním následujícího příkazu namapujte koncový bod, který jste vytvořili dříve, na skupinu původu. Privátní koncové body v Azure Container Apps podporují pouze příchozí provoz HTTP. Přenosy TCP se nepodporují.
az afd route create \
--resource-group $RESOURCE_GROUP \
--profile-name $AFD_PROFILE \
--endpoint-name $AFD_ENDPOINT \
--forwarding-protocol MatchRequest \
--route-name $AFD_ROUTE \
--https-redirect Enabled \
--origin-group $AFD_ORIGIN_GROUP \
--supported-protocols Http Https \
--link-to-default-domain Enabled
Přístup k aplikaci kontejneru z Azure Front Dooru
Získejte název hostitele vašeho koncového bodu AFD.
az afd endpoint show \ --resource-group $RESOURCE_GROUP \ --profile-name $AFD_PROFILE \ --endpoint-name $AFD_ENDPOINT \ --query hostName \ --output tsv
Název hostitele vypadá jako v následujícím příkladu.
my-afd-endpoint.<HASH>.b01.azurefd.net
Přejděte na název hostitele. Vidíte výstup obrazu kontejnerové aplikace pro rychlý start.
Pokud se zpočátku očekávaný výstup nezobrazuje, počkejte několik minut a pak aktualizujte.
Uvolnění prostředků
Pokud tuto aplikaci již nebudete používat, můžete odebrat skupinu prostředků my-container-apps. Tato akce odstraní instanci Azure Container Apps a všechny přidružené služby. Odstraní také skupinu prostředků, kterou služba Container Apps automaticky vytvořila a která obsahuje vlastní síťové komponenty.
Upozornění
Následující příkaz odstraní zadanou skupinu prostředků a všechny prostředky obsažené v ní. Pokud prostředky mimo rozsah tohoto průvodce existují v zadané skupině prostředků, odstraní se také.
az group delete --name $RESOURCE_GROUP
Návod
Máte problémy? Dejte nám vědět na GitHubu tím, že otevřete problém v repozitáři Azure Container Apps.