azd Šablony jsou úložiště podrobných plánů, která zahrnují kód aplikace pro testování konceptu, konfiguraci editoru a integrovaného vývojového prostředí a kód infrastruktury napsaný v Bicep nebo Terraformu. Tyto šablony se mají upravit a přizpůsobit vašim konkrétním požadavkům na aplikace a pak je použít k získání aplikace do Azure pomocí Azure Developer CLI (azd). Schéma azure.yaml definuje a popisuje aplikace a typy prostředků Azure, které jsou součástí těchto šablon.
Vzorek
Níže je obecný příklad azure.yaml požadované šablony azd .
name: yourApp
metadata:
template: yourApp@0.0.1-beta
services:
web:
project: ./src/web # path to your web project
dist: build # relative path to service deployment artifacts
language: js # one of the supported languages
host: appservice # one of the supported Azure services
(objekt) Definice kanálu kontinuální integrace Další podrobnosti najdete ve vlastnostech kanálu.
hooks
N
Háky na úrovni příkazů. Háky by měly odpovídat azd názvům příkazů s předponou pre nebo post v závislosti na tom, kdy se má skript spustit. Při zadávání cest by měly být relativní vzhledem k cestě projektu. Další podrobnosti najdete v tématu Přizpůsobení pracovních postupů Azure Developer CLI pomocí příkazů a volání událostí.
requiredVersions
N
Rozsah podporovaných azd verzí pro tento projekt. Pokud je verze azd mimo tento rozsah, projekt se nepodaří načíst. Volitelné (povolí všechny verze, pokud chybí). Příklad: >= 0.6.0-beta.3
Vlastnosti metadata
Název prvku
Požadováno
Popis
Příklad
template
N
(řetězec) Identifikátor šablony, ze které byla aplikace vytvořena.
todo-nodejs-mongo@0.0.1-beta
Vlastnosti infra
Název prvku
Požadováno
Popis
Příklad
provider
N
(řetězec) Poskytovatel infrastruktury pro prostředky Azure aplikace. (Výchozí hodnota: bicep).
Podívejte se na ukázku Terraformu níže. bicep, terraform
path
N
(řetězec) Relativní cesta ke složce k umístění obsahujícímu šablony zřizování Azure pro zadaného zprostředkovatele. (Výchozí hodnota: infrastruktura).
module
N
(řetězec) Název výchozího modulu se šablonami zřizování Azure (Výchozí: hlavní).
(řetězec) Název prostředku Azure, který implementuje službu. Pokud ho nezadáte, azd vyhledá prostředek podle azd-env-name značek a azd-service-name označí ho. Pokud se nenajde, vyhledá název prostředku vytvořený z aktuálního názvu prostředí zřetězený s názvem služby (<environment-name><resource-name>).
prodapi
project
Y
(řetězec) Cesta k adresáři zdrojového kódu služby
host
Y
(řetězec) Typ prostředku Azure sloužícího k implementaci služby Pokud tento parametr vynecháte, předpokládá se služba App Service.
appservice, containerapp, function, , aksstaticwebapp(pouze pro projekty nasaditelné prostřednictvím kubectl apply -f), springapp (pokud je povoleno – další informace o alfa funkcích)
language
Y
(řetězec) Jazyk implementace služby.
dotnet, csharp, fsharp, , pythonpy, js, , tsjava
module
Y
(řetězec) Cesta modulu infrastruktury použitého k nasazení služby vzhledem ke kořenové složce infrastruktury Pokud tento parametr vynecháte, rozhraní příkazového řádku bude předpokládat, že název modulu je stejný jako název služby.
dist
Y
(řetězec) Relativní cesta k artefaktům nasazení služby Rozhraní příkazového řádku použije soubory pod touto cestou k vytvoření artefaktu nasazení (soubor ZIP). Pokud tento parametr vynecháte, budou zahrnuty všechny soubory v adresáři projektu služby.
build
docker
N
Platí pouze v případě, že host je containerapp. Nemůže obsahovat další vlastnosti.
Podívejte se na vlastní ukázku Dockeru níže. path(řetězec): Cesta k souboru Dockerfile. Výchozí hodnota: ./Dockerfile; context(řetězec): Kontext sestavení Dockeru. Po zadání přepíše výchozí kontext. Výchozí hodnota: .; platform(řetězec): Cíl platformy. Výchozí: amd64
k8s
N
Možnosti konfigurace Služby Azure Kubernetes Service (AKS).
Podívejte se níže na ukázku AKS. deploymentPath(řetězec): Volitelné. Relativní cesta z cesty služby k manifestům nasazení k8s. Při nastavení přepíše výchozí umístění cesty nasazení pro manifesty nasazení k8s. Výchozí hodnota: manifests; namespace(řetězec): Volitelné. Obor názvů k8s nasazených prostředků. Po zadání se vytvoří nový obor názvů k8s, pokud ještě neexistuje. Výchozí hodnota: Project name; deployment(object): Viz vlastnosti nasazení; service(object): Viz vlastnosti služby; ingress(object): Viz vlastnosti příchozího přenosu dat.
hooks
N
Háky na úrovni služeb. Háky by měly odpovídat service názvům událostí s předponou pre nebo post v závislosti na tom, kdy se má skript spustit. Při zadávání cest by měly být relativní vzhledem k cestě služby.
(řetězec) Volitelné. Název prostředku nasazení k8s, který se má použít během nasazení. Používá se během nasazení, aby se zajistilo, že bylo dokončeno zavedení nasazení k8s. Pokud není nastavená, vyhledá prostředek nasazení ve stejném oboru názvů, který obsahuje název služby. Výchozí: Service name
api
Vlastnosti AKS service
Název prvku
Požadováno
Popis
Příklad
name
N
(řetězec) Volitelné. Název prostředku služby k8s, který se má použít jako výchozí koncový bod služby. Používá se při určování koncových bodů pro výchozí prostředek služby. Pokud není nastavená, vyhledá prostředek nasazení ve stejném oboru názvů, který obsahuje název služby. (Výchozí: Název služby)
api
Vlastnosti AKS ingress
Název prvku
Požadováno
Popis
Příklad
name
N
(řetězec) Volitelné. Název prostředku příchozího přenosu dat k8s, který se má použít jako výchozí koncový bod služby. Používá se při určování koncových bodů pro výchozí prostředek příchozího přenosu dat. Pokud není nastavená, vyhledá prostředek nasazení ve stejném oboru názvů, který obsahuje název služby. Výchozí: Service name
api
relativePath
N
(řetězec) Volitelné. Relativní cesta ke službě z kořenového adresáře kontroleru příchozího přenosu dat. Po nastavení se připojí ke kořenovému adresáři cesty prostředku příchozího přenosu dat.
Ukázka AKS s háky na úrovni služeb
metadata:
template: todo-nodejs-mongo-aks@0.0.1-beta
services:
web:
project: ./src/web
dist: build
language: js
host: aks
hooks:
postdeploy:
shell: sh
run: azd env set REACT_APP_WEB_BASE_URL ${SERVICE_WEB_ENDPOINT_URL}
api:
project: ./src/api
language: js
host: aks
k8s:
ingress:
relativePath: api
hooks:
postdeploy:
shell: sh
run: azd env set REACT_APP_API_BASE_URL ${SERVICE_API_ENDPOINT_URL}
Vlastnosti pipeline
Název prvku
Požadováno
Popis
Příklad
provider
N
(řetězec) Poskytovatel kanálu, který se má použít pro kontinuální integraci. (Výchozí: github).
Informace o tom, jak vytvořit chybu, požádat o pomoc nebo navrhnout novou funkci pro Azure Developer CLI, najdete na stránce pro řešení potíží a podporu .