Kurz: Sestavení a nasazení aplikace do Azure Container Apps

Tento článek ukazuje, jak vytvořit a nasadit mikroslužbu do Azure Container Apps ze zdrojového úložiště pomocí preferovaného programovacího jazyka.

Toto je první kurz v sérii článků, které vás provedou používáním základních funkcí v Azure Container Apps. Prvním krokem je vytvoření back-endové služby webového rozhraní API, která vrací statickou kolekci hudebních alb.

Poznámka:

Tuto aplikaci můžete také sestavit a nasadit pomocí příkazu az containerapp up podle pokynů v rychlém startu : Sestavení a nasazení aplikace do Azure Container Apps z článku o úložišti . Tento az containerapp up příkaz představuje rychlý a pohodlný způsob, jak pomocí jediného příkazu sestavit a nasadit aplikaci do Azure Container Apps. Neposkytuje ale stejnou úroveň přizpůsobení pro vaši aplikaci kontejneru.

Další kurz série sestaví a nasadí front-endovou webovou aplikaci do Azure Container Apps.

Následující snímek obrazovky ukazuje výstup z rozhraní API alba nasazeného v tomto kurzu.

Snímek obrazovky s odpovědí z koncového bodu rozhraní API alb

Požadavky

K dokončení tohoto projektu potřebujete následující položky:

Požadavek Pokyny
Účet Azure Pokud ho nemáte, vytvořte si účet zdarma. K pokračování potřebujete oprávnění přispěvatele nebo vlastníka předplatného Azure.

Podrobnosti najdete v tématu Přiřazení rolí Azure pomocí webu Azure Portal .
Účet GitHubu Zaregistrujte se zdarma.
git Instalace Gitu
Azure CLI Nainstalujte rozhraní příkazového řádku Azure CLI.
Požadavek Pokyny
Účet Azure Pokud ho nemáte, vytvořte si účet zdarma. K pokračování potřebujete oprávnění přispěvatele nebo vlastníka předplatného Azure. Podrobnosti najdete v tématu Přiřazení rolí Azure pomocí webu Azure Portal .
Účet GitHubu Zaregistrujte se zdarma.
git Instalace Gitu
Azure CLI Nainstalujte rozhraní příkazového řádku Azure CLI.
Docker Desktop Docker poskytuje instalační programy, které konfigurují prostředí Dockeru v systémech macOS, Windows a Linux.

Na příkazovém řádku zadejte docker , abyste měli jistotu, že je Docker spuštěný.

Nastavení

Pokud se chcete přihlásit k Azure z rozhraní příkazového řádku, spusťte následující příkaz a podle pokynů dokončete proces ověřování.

az login

Pokud chcete zajistit, že používáte nejnovější verzi rozhraní příkazového řádku, spusťte příkaz upgrade.

az upgrade

Dále nainstalujte nebo aktualizujte rozšíření Azure Container Apps pro rozhraní příkazového řádku.

az extension add --name containerapp --upgrade

Teď, když je nainstalované aktuální rozšíření nebo modul, zaregistrujte obory Microsoft.App názvů a Microsoft.OperationalInsights obory názvů.

Poznámka:

Prostředky Azure Container Apps se migrovaly z Microsoft.Web oboru názvů do Microsoft.App oboru názvů. Další podrobnosti najdete v tématu Migrace oboru názvů z webu Microsoft.Web na Microsoft.App v březnu 2022 .

az provider register --namespace Microsoft.App
az provider register --namespace Microsoft.OperationalInsights

Vytvoření proměnných prostředí

Po dokončení nastavení Azure CLI můžete definovat proměnné prostředí, které se používají v tomto článku.

Definujte následující proměnné v prostředí Bash.

RESOURCE_GROUP="album-containerapps"
LOCATION="canadacentral"
ENVIRONMENT="env-album-containerapps"
API_NAME="album-api"
FRONTEND_NAME="album-ui"
GITHUB_USERNAME="<YOUR_GITHUB_USERNAME>"

Před spuštěním tohoto příkazu nezapomeňte nahradit <YOUR_GITHUB_USERNAME> uživatelské jméno GitHubu.

Dále definujte název registru kontejneru, který je pro vás jedinečný.

ACR_NAME="acaalbums"$GITHUB_USERNAME

Příprava úložiště GitHub

Přejděte do úložiště pro preferovaný jazyk a rozvětvujte úložiště.

Výběrem tlačítka Fork v horní části úložiště rozhraní API alba rozvětvte úložiště do svého účtu.

Teď můžete naklonovat fork ukázkového úložiště.

Pomocí následujícího příkazu Git naklonujte forkované úložiště do složky code-to-cloud :

git clone https://github.com/$GITHUB_USERNAME/containerapps-albumapi-csharp.git code-to-cloud

Dále změňte adresář na kořen klonovaného úložiště.

cd code-to-cloud/src

Vytvoření skupiny prostředků Azure

Vytvořte skupinu prostředků pro uspořádání služeb souvisejících s nasazením aplikace kontejneru.

az group create \
  --name $RESOURCE_GROUP \
  --location "$LOCATION"

Vytvoření registru služby Azure Container Registry

Po vytvoření image kontejneru rozhraní API alba vytvořte instanci služby Azure Container Registry (ACR) ve skupině prostředků, do které ji uložíte.

az acr create \
  --resource-group $RESOURCE_GROUP \
  --name $ACR_NAME \
  --sku Basic \
  --admin-enabled true

Sestavení aplikace

Pomocí úloh ACR můžete sestavit a odeslat image Dockeru pro rozhraní API alba bez místní instalace Dockeru.

Sestavení kontejneru pomocí ACR

Spuštěním následujícího příkazu zahajte proces sestavení a nabízení image pomocí ACR. Na . konci příkazu představuje kontext sestavení Dockeru, což znamená, že tento příkaz by se měl spustit ve složce src , kde se nachází soubor Dockerfile.

az acr build --registry $ACR_NAME --image $API_NAME .

Výstup z az acr build příkazu ukazuje průběh nahrávání zdrojového kódu do Azure a podrobnosti o docker build operacích a docker push operacích.

Sestavení aplikace

Následující kroky ukazují, jak sestavit image kontejneru místně pomocí Dockeru a odeslat image do nového registru kontejneru.

Sestavení kontejneru pomocí Dockeru

Následující příkaz vytvoří image kontejneru pro rozhraní API alba a označí ji plně kvalifikovaným názvem přihlašovacího serveru ACR. Na . konci příkazu představuje kontext sestavení Dockeru, což znamená, že tento příkaz by se měl spustit ve složce src , kde se nachází soubor Dockerfile.

docker build --tag $ACR_NAME.azurecr.io/$API_NAME .

Nahrání image do registru kontejneru

Nejprve se přihlaste ke službě Azure Container Registry.

az acr login --name $ACR_NAME

Teď nasdílejte image do registru.

docker push $ACR_NAME.azurecr.io/$API_NAME

Vytvoření prostředí Container Apps

Prostředí Azure Container Apps funguje jako zabezpečená hranice kolem skupiny kontejnerových aplikací.

Pomocí následujícího příkazu vytvořte prostředí Container Apps.

az containerapp env create \
  --name $ENVIRONMENT \
  --resource-group $RESOURCE_GROUP \
  --location "$LOCATION"

Nasazení image do aplikace typu kontejner

Teď, když máte vytvořené prostředí, můžete pomocí příkazu vytvořit a nasadit aplikaci kontejneru az containerapp create .

Pomocí následujícího příkazu vytvořte a nasaďte aplikaci kontejneru.

az containerapp create \
  --name $API_NAME \
  --resource-group $RESOURCE_GROUP \
  --environment $ENVIRONMENT \
  --image $ACR_NAME.azurecr.io/$API_NAME \
  --target-port 8080 \
  --ingress 'external' \
  --registry-server $ACR_NAME.azurecr.io \
  --query properties.configuration.ingress.fqdn
  • Nastavením na external, --ingress vaše aplikace kontejneru je přístupná z veřejného internetu.

  • Nastaví target-port se tak, aby 8080 odpovídal portu, na který kontejner naslouchá žádostem.

  • query Bez vlastnosti volání vrátí az containerapp create odpověď JSON, která obsahuje bohatou sadu podrobností o aplikaci. Přidání parametru dotazu filtruje výstup jenom na plně kvalifikovaný název domény (FQDN) aplikace.

Ověření nasazení

Zkopírujte plně kvalifikovaný název domény do webového prohlížeče. Ve webovém prohlížeči přejděte ke koncovému /albums bodu plně kvalifikovaného názvu domény.

Snímek obrazovky s odpovědí z koncového bodu rozhraní API alb

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

Pokud nebudete pokračovat v komunikaci mezi mikroslužbami kurz, můžete odebrat prostředky Azure vytvořené během tohoto rychlého startu. Spuštěním následujícího příkazu odstraňte skupinu prostředků spolu se všemi prostředky vytvořenými v tomto rychlém startu.

az group delete --name $RESOURCE_GROUP

Tip

Máte problémy? Dejte nám vědět na GitHubu otevřením problému v úložišti Azure Container Apps.

Další kroky

Tento rychlý start je vstupním bodem pro sadu progresivních kurzů, které představují různé funkce v Azure Container Apps. Pokračujte a zjistěte, jak povolit komunikaci z webového front-endu, který volá rozhraní API, které jste nasadili v tomto článku.