Nasazení webové aplikace Go do Azure Container Apps

V tomto rychlém startu se naučíte nasadit kontejnerizovanou webovou aplikaci Go do Azure Container Apps.

Azure Container Apps umožňuje spouštět kód aplikace zabalený v jakémkoli kontejneru, aniž byste museli spravovat složitou cloudovou infrastrukturu nebo komplexní orchestrátory kontejnerů a nemusíte se starat o modul runtime nebo programovací model. Mezi běžné použití Azure Container Apps patří: Nasazování koncových bodů rozhraní API, hostování aplikací pro zpracování na pozadí, zpracování zpracování řízeného událostmi a spouštění mikroslužeb.

Tento kurz vás provede sestavením image Dockeru, nasazením této image do služby Azure Container Registry a nasazením webové aplikace Go do Azure Container Apps.

Požadavky

  • Předplatné Azure: Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet před tím, než začnete.

Stažení ukázkové aplikace

Abyste mohli postupovat podle tohoto kurzu, budete potřebovat ukázkovou aplikaci ke kontejnerizaci. Ukázková webová aplikace Go je k dispozici v úložišti GitHubu msdocs-go-webapp-quickstart . Stáhněte nebo naklonujte ukázkovou aplikaci do místní pracovní stanice.

git clone https://github.com/Azure-Samples/msdocs-go-webapp-quickstart.git

cd msdocs-go-webapp-quickstart

Vytvoření registru služby Azure Container Registry

Azure Container Registry umožňuje vytvářet, ukládat a spravovat image kontejnerů. Použijete ji k uložení image Dockeru, která obsahuje ukázkovou webovou aplikaci Go uvedenou v ukázkovém úložišti uvedeném výše.

Spuštěním následujících příkazů vytvořte Službu Azure Container Registry:

  1. Vytvořte skupinu prostředků Azure.

    az group create \
        --name <resourceGroupName> \
        --location eastus
    
  2. Vytvořit registr kontejneru Azure

    az acr create \
        --resource-group <resourceGroupName> \
        --name <azureContainerRegistryName> \
        --sku basic \
        --admin-enabled true
    
  3. Přihlaste se k instanci kontejneru Azure.

    az acr login --name <azureContainerRegistryName>  
    

Nahraďte a <azureContainerRegistryName> nahraďte <resourceGroupName> odpovídajícími hodnotami. Mějte na paměti, že název služby Azure Container Registry musí být globálně jedinečný.

Sestavení a nasdílení image Dockeru

Po vytvoření služby Azure Container Registry sestavte a nasdílejte image Dockeru ukázkové webové aplikace Go.

Spusťte následující příkazy sestavení a nasdílení image do registru:

  1. Získejte informace o přihlašovacím serveru.

    az acr show \
        --name <azureContainerRegistryName> \
        --resource-group <resourceGroupName> \
        --query loginServer \
        --output tsv  
    
  2. Sestavte image Dockeru místně.

    docker build -t <loginServer>/<imageName>:latest .
    
  3. Nasdílejte image Dockeru do služby Azure Container Registry.

    docker push <loginServer>/<imageName>:latest
    
  4. Ověřte, že se image úspěšně odeslala do služby Azure Container Registry.

    az acr repository list \
        --name <azureContainerRegistryName> \
        --output table
    

Nahraďte loginServer, imageNamea azureContainerRegistryName odpovídajícími hodnotami. Název image je image Dockeru, která se odešle do služby Azure Container Registry a později se používá k nasazení do Azure Container Apps.

Teď, když máte k dispozici image ve službě Azure Container Registry, jste připraveni nasadit aplikaci Azure Container App a její prostředí.

Vytvoření prostředí Azure Container Apps

Služba Azure Container Apps nemá složitost orchestrátoru kontejnerů, ale přesto potřebuje nějaký způsob, jak vytvořit zabezpečené hranice, což je místo, kde přichází prostředí Azure Container Apps. Container Apps nasazené ve stejném prostředí sdílí stejnou virtuální síť a zapisuje protokoly do stejného pracovního prostoru služby Log Analytics. Než budete moct nasadit aplikaci Azure Container App, budete potřebovat prostředí, do které se má nasadit.

Spuštěním následujících příkazů vytvořte prostředí Azure Container Apps:

  1. Získejte heslo správce služby Azure Container Registry.

    ACR_PASSWORD=$(az acr credential show \
        --name <azureContainerRegistryName> \
        --query 'passwords[0].value' \
        --out tsv)
    
  2. Vytvořte prostředí Container Apps.

    az containerapp env create \
        --name <containerAppEnvName> \
        --resource-group <resourceGroupName> \
        --location "East US"
    

Nasazení do Azure Container Apps

V tomto okamžiku jste vytvořili Službu Azure Container Registry, vytvořili a nasdíleli do ní image Dockeru a vytvořili prostředí Azure Container Apps. Zbývá jen nasadit aplikaci.

Spuštěním následujícího příkazu nasaďte webovou aplikaci Go do Azure Container Apps:

az containerapp create \
    --name <containerAppName> \
    --resource-group <resourceGroupName> \
    --environment <containerAppEnvName> \
    --image "<loginServer>/<imageName>:latest" \
    --registry-server "<loginServer>" \
    --registry-username "<azureContainerRegistryName>" \
    --registry-password "$ACR_PASSWORD" \
    --target-port 8080 \
    --ingress 'external'

Ověření adresy URL webové aplikace

Spuštěním následujícího příkazu Azure CLI získejte plně kvalifikovaný název domény (plně kvalifikovaný název domény) příchozího přenosu dat webové aplikace.

APP_FQDN=$(az containerapp show \
    --name <containerAppName> \
    --resource-group <resourceGroupName> \
    --query properties.configuration.ingress.fqdn \
    --output tsv)

Potom spusťte příkaz curl pro plně kvalifikovaný název domény a potvrďte výstup, který odráží kód HTML webu.

curl "https://$APP_FQDN"

Vyčištění prostředků

Až budete s ukázkovou aplikací hotovi, můžete z Azure odebrat všechny prostředky aplikace. Tím se zabrání průběžným poplatkům a vaše předplatné Azure zůstane přehledné. Odebráním skupiny prostředků se také odeberou všechny prostředky ve skupině prostředků a je nejrychlejší způsob, jak odebrat všechny prostředky Azure pro vaši aplikaci.

az group delete \
    --name <resourceGroupName> \
    --no-wait

Další kroky