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.
Důležité
31. března 2026 bude vyřazena služba Azure App Service on Arc s podporou Kubernetes. Od 30. září 2025 už zákazníci nebudou moct rozšíření nainstalovat. Žádáme vás , abyste migrovali do jiných řešení, jako je Azure Container Apps v Kubernetes s podporou Služby Arc. Migrace také umožňuje využít hybridní služby Logic Apps pro vaše úlohy integrace.
V tomto rychlém startu vytvoříte aplikaci App Service pro cluster Kubernetes s podporou Azure Arc (Preview). Tento scénář podporuje jenom linuxové aplikace a můžete použít integrovaný jazykový zásobník nebo vlastní kontejner.
Požadavky
Přidání rozšíření Azure CLI
Spusťte prostředí Bash v Azure Cloud Shellu.
Protože tyto příkazy rozhraní příkazového řádku ještě nejsou součástí základní sady rozhraní příkazového řádku, přidejte je následujícími příkazy:
az extension add --upgrade --yes --name customlocation
az extension remove --name appservice-kube
az extension add --upgrade --yes --name appservice-kube
1. Vytvoření skupiny prostředků
Spusťte následující příkaz:
az group create --name myResourceGroup --location eastus
2. Získejte vlastní umístění
Získejte následující informace o vlastním umístění od správce clusteru (viz Vytvoření vlastního umístění).
customLocationGroup="<resource-group-containing-custom-location>"
customLocationName="<name-of-custom-location>"
Získejte vlastní ID umístění pro další krok.
customLocationId=$(az customlocation show \
--resource-group $customLocationGroup \
--name $customLocationName \
--query id \
--output tsv)
3. Vytvoření aplikace
Následující příklad vytvoří Node.js aplikaci. Nahraďte <app-name> jedinečným názvem v rámci clusteru (platné znaky jsou a-z, 0-9a -).
Podporované prostředí runtime:
| Popis | Hodnota runtime pro CLI |
|---|---|
| .NET Core 8.0 | DOTNETCORE|8.0 |
| .NET 5.0 | DOTNETCORE|9.0 |
| .NET 5.0 | DOTNETCORE|10.0 |
| Node JS 20 | NODE|20-lts |
| Node JS 22 | NODE|22 LTS |
| Node JS 24 | NODE|24-lts |
| Python 3.10 | PYTHON|3.10 |
| Python 3.11 | PYTHON|3.11 |
| Python 3.12 | PYTHON|3.12 |
| Python 3.13 | PYTHON|3.13 |
| Python 3.14 | PYTHON|3.14 |
| PHP 8.1 | PHP|8.1 |
| PHP 8.2 | PHP|8.2 |
| PHP 8.3 | PHP|8.3 |
| PHP 8.4 | PHP|8.4 |
| Java 8 | JAVA|8-jre8 |
| Java 11 | JAVA|11-java11 |
| Java 17 | JAVA|17-java17 |
| Java 21 | JAVA|21-java21 |
| Tomcat 9.0 | TOMCAT|9.0-jre8 |
| Tomcat 9.0 | TOMCAT|9.0-java11 |
| Tomcat 9.0 | TOMCAT|9.0-java17 |
| Tomcat 9.0 | TOMCAT|9.0-java21 |
| Tomcat 10.1 | TOMCAT|10.1-java11 |
| Tomcat 10.1 | TOMCAT|10.1-java17 |
| Tomcat 10.1 | TOMCAT|10.1-java21 |
| Tomcat 11.0 | TOMCAT|11.0-java11 |
| Tomcat 11.0 | TOMCAT|11.0-java17 |
| Tomcat 11.0 | TOMCAT|11.0-java21 |
az webapp create \
--resource-group myResourceGroup \
--name <app-name> \
--custom-location $customLocationId \
--runtime 'NODE|24-lts'
4. Nasazení kódu
Poznámka:
az webapp up ve verzi Public Preview se nepodporuje.
Získejte ukázkovou Node.js aplikaci pomocí Gitu a nasaďte ji pomocí nasazení ZIP. Nahraďte <app-name> názvem vaší webové aplikace.
git clone https://github.com/Azure-Samples/nodejs-docs-hello-world
cd nodejs-docs-hello-world
zip -r package.zip .
az webapp config appsettings set --resource-group myResourceGroup --name <app-name> --settings SCM_DO_BUILD_DURING_DEPLOYMENT=true
az webapp deploy --resource-group myResourceGroup --name <app-name> --src-path package.zip
5. Získání diagnostických protokolů pomocí Log Analytics
Poznámka:
Pokud chcete používat Log Analytics, měli byste ho dříve povolit při instalaci rozšíření Služby App Service. Pokud jste rozšíření nainstalovali bez Log Analytics, přeskočte tento krok.
Přejděte do pracovního prostoru služby Log Analytics, který je nakonfigurovaný s rozšířením služby App Service, a v levém navigačním panelu klikněte na Protokoly. Spuštěním následujícího ukázkového dotazu zobrazte protokoly za posledních 72 hodin. Nahraďte <app-name> názvem vaší webové aplikace. Pokud při spuštění dotazu dojde k chybě, zkuste to znovu za 10 až 15 minut (Log Analytics možná začne v tomto intervalu přijímat protokoly z vaší aplikace).
let StartTime = ago(72h);
let EndTime = now();
AppServiceConsoleLogs_CL
| where TimeGenerated between (StartTime .. EndTime)
| where AppName_s =~ "<app-name>"
Protokoly všech aplikací hostovaných v clusteru Kubernetes jsou protokolovány do pracovního prostoru Log Analytics ve vlastní tabulce protokolů s názvem AppServiceConsoleLogs_CL.
Log_s obsahuje protokoly aplikací pro danou službu App Service a AppName_s obsahuje název aplikace App Service. Kromě protokolů, které píšete prostřednictvím kódu aplikace, obsahuje sloupec Log_s také protokoly o spuštění, vypnutí kontejneru a aplikacích funkcí.
Další informace o dotazech protokolu najdete v začátcích s Kusto.
(Volitelné) Nasazení vlastního kontejneru
Pokud chcete vytvořit vlastní kontejnerizovanou aplikaci, spusťte az webapp create s --deployment-container-image-name. Pro privátní úložiště přidejte --docker-registry-server-user a --docker-registry-server-password.
Zkuste například:
az webapp create \
--resource-group myResourceGroup \
--name <app-name> \
--custom-location $customLocationId \
--deployment-container-image-name mcr.microsoft.com/appsvc/staticsite:latest
Pokud chcete po vytvoření aplikace aktualizovat image, přečtěte si téma Změna image Dockeru vlastního kontejneru.