Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Plik azure.yaml jest plikiem konfiguracji dla projektów interfejsu wiersza polecenia dla deweloperów platformy Azure (azd). Umieść go w katalogu głównym projektu w celu zdefiniowania usług, zasobów platformy Azure, infrastruktury, punktów zaczepienia i potoku ciągłej integracji/ciągłego wdrażania tworzącego aplikację. Po uruchomieniu poleceń, takich jak azd up, azd provisionlub azd deploy, interfejs wiersza polecenia odczytuje ten plik, aby zrozumieć strukturę aplikacji i jak wdrożyć ją na platformie Azure.
Ten artykuł zawiera pełne odwołanie do schematu azure.yaml. Aby rozpocząć pracę z szablonami azd , zobacz Omówienie szablonów interfejsu wiersza polecenia dla deweloperów platformy Azure.
Próbka
Poniżej przedstawiono ogólny przykład azure.yaml pliku szablonu azd . Aby zapoznać się z rzeczywistym przykładem, zobacz azure.yamlszablon ToDo NodeJs Mongo:
name: yourApp
metadata:
template: yourApp@0.0.1-beta
services:
web:
project: ./src/web
dist: build
language: js
host: appservice
api:
project: ./src/api
language: js
host: appservice
Właściwości najwyższego poziomu
| Nazwa elementu | Wymagane | Typ | Opis |
|---|---|---|---|
name |
Y | ciąg | Nazwa aplikacji. Dozwolone są tylko małe litery, cyfry i łączniki (-). Nazwa musi zaczynać się i kończyć literą lub cyfrą. |
resourceGroup |
N | ciąg | Nazwa grupy zasobów platformy Azure. Po określeniu zastępuje nazwę grupy zasobów używaną do aprowizacji infrastruktury. Obsługuje podstawianie zmiennych środowiskowych. |
metadata |
N | obiekt | Metadane dotyczące szablonu aplikacji. |
infra |
N | obiekt | Zapewnia dodatkową konfigurację aprowizacji infrastruktury platformy Azure. |
services |
N | obiekt | Definicja usług składających się na aplikację. |
resources |
N | obiekt | Definicja zasobów platformy Azure używanych przez aplikację. |
pipeline |
N | obiekt | Definicja potoku ciągłej integracji. |
hooks |
N | obiekt | Haki na poziomie polecenia dla azd poleceń. |
requiredVersions |
N | obiekt | Zapewnia dodatkową konfigurację dla wymaganych wersji azd rozszerzeń i. |
state |
N | obiekt | Zapewnia dodatkową konfigurację zarządzania stanami. |
platform |
N | obiekt | Udostępnia dodatkową konfigurację funkcji specyficznych dla platformy, takich jak Centrum deweloperów platformy. |
workflows |
N | obiekt | Zapewnia dodatkową konfigurację przepływów pracy, takich jak zastępowanie azd up zachowania. |
cloud |
N | obiekt | Zapewnia dodatkową konfigurację wdrażania w suwerennych chmurach. Domyślna chmura to AzureCloud. |
name
(ciąg, wymagany) Nazwa aplikacji. Dozwolone są tylko małe litery, cyfry i łączniki (-). Nazwa musi zaczynać się i kończyć literą lub cyfrą. Minimalna długość: 2 znaki.
name: my-app
resourceGroup
(ciąg) Nazwa grupy zasobów platformy Azure. Po określeniu zastępuje nazwę grupy zasobów używaną do aprowizacji infrastruktury. Obsługuje podstawianie zmiennych środowiskowych. Musi zawierać od 3 do 64 znaków.
resourceGroup: rg-my-app-${AZURE_ENV_NAME}
metadata
(obiekt) Metadane dotyczące szablonu aplikacji.
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
template |
N | ciąg | Identyfikator szablonu, z którego utworzono aplikację. |
metadata:
template: todo-nodejs-mongo@0.0.1-beta
infra
(obiekt) Zapewnia dodatkową konfigurację aprowizacji infrastruktury platformy Azure.
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
provider |
N | ciąg | Dostawca aprowizacji infrastruktury używany do aprowizacji zasobów platformy Azure dla aplikacji. Wartość domyślna: bicep. Dozwolone wartości: bicep, terraform. |
path |
N | ciąg | Ścieżka folderu względnego do szablonów aprowizacji platformy Azure dla określonego dostawcy. Wartość domyślna: infra. |
module |
N | ciąg | Nazwa modułu domyślnego w szablonach aprowizacji platformy Azure. Wartość domyślna: main. |
layers |
N | macierz | Warstwy aprowizacji infrastruktury platformy Azure. Zobacz: infra.layers. |
Note
Jeśli layers określono element z co najmniej jednym elementem, path nie można użyć właściwości i module . Zamiast tego użyj wartości specyficznych dla pathmodule warstwy.
infra.layers
(tablica obiektów) Definiuje warstwy aprowizacji dla infrastruktury platformy Azure. Każda warstwa reprezentuje niezależną jednostkę aprowizacji.
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
name |
Y | ciąg | Nazwa warstwy aprowizacji. |
path |
Y | ciąg | Ścieżka folderu względnego do szablonów aprowizacji platformy Azure dla określonego dostawcy. |
module |
N | ciąg | Nazwa modułu aprowizacji platformy Azure używanego podczas aprowizacji zasobów. Wartość domyślna: main. |
hooks |
N | obiekt | Aprowizowanie punktów zaczepienia warstwy. Obsługuje preprovision i postprovision haki. Podczas określania ścieżek powinny być względne względem ścieżki warstwy. Zobacz Definicja haka. |
infra:
provider: bicep
layers:
- name: core
path: ./infra/core
- name: services
path: ./infra/services
hooks:
postprovision:
shell: sh
run: ./scripts/post-provision.sh
Przykład dostawcy narzędzia Terraform jako dostawcy IaC
Aby użyć narzędzia Terraform zamiast Bicep, ustaw wartość providerterraform. Aby uzyskać więcej informacji, zobacz Use Terraform as an IaC provider (Używanie narzędzia Terraform jako dostawcy IaC).
name: yourApp-terraform
metadata:
template: yourApp-terraform@0.0.1-beta
services:
web:
project: ./src/web
dist: build
language: js
host: appservice
api:
project: ./src/api
language: js
host: appservice
infra:
provider: terraform
services
(obiekt) Definicja usług składających się na aplikację. Każdy klucz jest nazwą usługi, a wartość jest obiektem konfiguracji usługi.
Właściwości usługi
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
host |
Y | ciąg | Typ zasobu platformy Azure używanego do implementacji usługi. Zobacz Typy hostów. |
project |
Conditional | ciąg | Ścieżka do katalogu kodu źródłowego usługi. Wymagane dla większości typów hostów. |
image |
Conditional | ciąg | Obraz źródłowy do użycia dla obrazu kontenera zamiast kompilowania ze źródła. Obsługuje podstawianie zmiennych środowiskowych. Tylko prawidłowe dla containerapp hosta. |
language |
N | ciąg | Język implementacji usługi. Dozwolone wartości: , , , , , dotnet, csharp, fsharp, , . pypythonjstsjavadocker |
module |
N | ciąg | Ścieżka modułu infrastruktury używanego do wdrażania usługi względem głównego folderu infra. W przypadku pominięcia interfejs wiersza polecenia zakłada, że nazwa modułu jest taka sama jak nazwa usługi. |
dist |
N | ciąg | Względna ścieżka do artefaktów wdrożenia usługi. |
resourceName |
N | ciąg | Nazwa zasobu platformy Azure, który implementuje usługę. Domyślnie interfejs wiersza polecenia odnajduje zasób platformy Azure z tagiem azd-service-name ustawionym na nazwę bieżącej usługi. Obsługuje podstawianie zmiennych środowiskowych. |
resourceGroup |
N | ciąg | Nazwa grupy zasobów platformy Azure, która zawiera zasób. Po określeniu interfejs wiersza polecenia znajduje zasób platformy Azure w określonej grupie zasobów. Obsługuje podstawianie zmiennych środowiskowych. |
remoteBuild |
N | boolean | Czy używać zdalnej kompilacji na potrzeby wdrażania aplikacji funkcji. Prawidłowy tylko wtedy, gdy host ma wartość function. W przypadku ustawienia wartości truepakiet wdrożeniowy jest kompilowany zdalnie przy użyciu rozwiązania Oryx. Domyślnie dotyczy true aplikacji funkcji JavaScript, TypeScript i Python. |
docker |
N | obiekt | Konfiguracja platformy Docker. Dotyczy tylko hostów opartych na kontenerach. Zobacz: docker. |
k8s |
N | obiekt | Opcje konfiguracji usługi AKS. Prawidłowy tylko wtedy, gdy host ma wartość aks. Zobacz: k8s. |
config |
N | obiekt | Dodatkowe opcje konfiguracji usługi. |
uses |
N | macierz | Lista nazw usług i nazw zasobów, od których zależy ta usługa. |
env |
N | obiekt | Mapa nazw zmiennych środowiskowych na wartości. Obsługuje podstawianie zmiennych środowiskowych. |
apiVersion |
N | ciąg | Wersja interfejsu API dostawcy zasobów dla wdrożeń. Prawidłowy tylko wtedy, gdy host ma wartość containerapp. |
hooks |
N | obiekt | Punkty zaczepienia na poziomie usługi. Zobacz Punkty zaczepienia usługi. |
Tip
Zobacz Przykłady usług , aby zapoznać się z kompletnymi przykładami konfiguracji usługi YAML.
Typy hostów
Właściwość host określa typ zasobu platformy Azure używanego do implementacji usługi i kontroluje, które inne właściwości są prawidłowe.
| Wartość hosta | Opis | Wymaga project |
Obsługuje image |
Obsługuje docker |
Obsługuje k8s |
Obsługuje env |
Obsługuje apiVersion |
|---|---|---|---|---|---|---|---|
appservice |
Azure App Service | Y | N | N | N | N | N |
containerapp |
Azure Container Apps |
project lub image (nie oba) |
Y | Y | N | Y | Y |
function |
Azure Functions | Y | N | N | N | N | N |
staticwebapp |
Azure Static Web Apps | Y | N | N | N | N | N |
springapp |
Azure Spring Apps | Y | N | N | N | N | N |
aks |
Azure Kubernetes Service | N | N | Y | Y | N | N |
ai.endpoint |
Punkt końcowy online usługi Azure AI | Y | N | Y | N | N | N |
azure.ai.agent |
Agent sztucznej inteligencji platformy Azure | Y | N | Y | N | N | N |
Note
springapp obsługa wymaga zgody na funkcje alfa. Aby uzyskać więcej informacji, zobacz Funkcje alfa.
Note
Jeśli host parametr to containerapp, musisz podać wartość image lub project, ale nie obie. W przypadku image ustawienia kontener zostanie wdrożony z określonego obrazu. W przypadku project ustawienia obraz kontenera jest kompilowany na podstawie źródła.
ai.endpoint Config
(obiekt, wymagany, gdy host jest ai.endpoint) Zapewnia dodatkową konfigurację wdrożenia punktu końcowego online usługi Azure AI.
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
workspace |
N | ciąg | Nazwa obszaru roboczego projektu AI Studio. Po pominięciu azd użyje wartości określonej w zmiennej środowiskowej AZUREAI_PROJECT_NAME . Obsługuje podstawianie zmiennych środowiskowych. |
flow |
N | obiekt | Konfiguracja przepływu monitów usługi Azure AI Studio. Po pominięciu przepływ monitu nie jest tworzony. Zobacz Konfiguracja składnika sztucznej inteligencji. |
environment |
N | obiekt | Konfiguracja środowiska niestandardowego usługi Azure AI Studio. Po pominięciu środowisko niestandardowe nie jest tworzone. Zobacz Konfiguracja składnika sztucznej inteligencji. |
model |
N | obiekt | Konfiguracja modelu usługi Azure AI Studio. Po pominięciu model nie jest tworzony. Zobacz Konfiguracja składnika sztucznej inteligencji. |
deployment |
Y | obiekt | Konfiguracja wdrażania punktu końcowego online w usłudze Azure AI Studio. Zostanie utworzone nowe wdrożenie punktu końcowego online, a ruch zostanie automatycznie przeniesiony do nowego wdrożenia po pomyślnym zakończeniu. Zobacz Konfiguracja wdrożenia sztucznej inteligencji. |
Note
Gdy host parametr to ai.endpoint, zarówno , jak project i config są wymagane. Zobacz ai.endpoint konfigurację wymaganych właściwości konfiguracji.
Konfiguracja składnika sztucznej inteligencji
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
name |
N | ciąg | Nazwa składnika sztucznej inteligencji. Po pominięciu azd generuje nazwę na podstawie typu składnika i nazwy usługi. Obsługuje podstawianie zmiennych środowiskowych. |
path |
Y | ciąg | Ścieżka do pliku konfiguracji składnika sztucznej inteligencji lub kodu źródłowego. |
overrides |
N | obiekt | Mapa par klucz-wartość używana do zastępowania konfiguracji składnika sztucznej inteligencji. Obsługuje podstawianie zmiennych środowiskowych. |
Konfiguracja wdrożenia sztucznej inteligencji
Dziedziczy wszystkie właściwości konfiguracji składnika sztucznej inteligencji oraz:
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
environment |
N | obiekt | Mapa par klucz/wartość do ustawienia jako zmiennych środowiskowych dla wdrożenia. Wartości obsługują podstawianie zmiennych środowiskowych i azd systemu operacyjnego. |
services:
myendpoint:
project: ./src/endpoint
host: ai.endpoint
config:
workspace: my-ai-project
deployment:
path: ./deployment
environment:
MODEL_NAME: ${AZURE_OPENAI_MODEL}
docker
(obiekt) Konfiguracja platformy Docker dla usługi. Dotyczy tylko hostów obsługujących kontenery (containerapp, aks, ai.endpoint, azure.ai.agent).
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
path |
N | ciąg | Ścieżka do pliku Dockerfile względem usługi. Wartość domyślna: ./Dockerfile. |
context |
N | ciąg | Kontekst kompilacji platformy Docker. Po określeniu zastępuje kontekst domyślny. Wartość domyślna: .. |
platform |
N | ciąg | Element docelowy platformy. Wartość domyślna: amd64. |
registry |
N | ciąg | Rejestr kontenerów w celu wypchnięcia obrazu do. W przypadku pominięcia wartość domyślna to wartość zmiennej środowiskowej AZURE_CONTAINER_REGISTRY_ENDPOINT . Obsługuje podstawianie zmiennych środowiskowych. |
image |
N | ciąg | Nazwa zastosowana do utworzonego obrazu kontenera. W przypadku pominięcia wartość domyślna to {appName}/{serviceName}-{environmentName}. Obsługuje podstawianie zmiennych środowiskowych. |
tag |
N | ciąg | Tag stosowany do utworzonego obrazu kontenera. W przypadku pominięcia wartość domyślna to azd-deploy-{unix time (seconds)}. Obsługuje podstawianie zmiennych środowiskowych. |
buildArgs |
N | tablica stringów | Argumenty kompilacji, które mają być przekazywane do polecenia kompilacji platformy Docker. |
network |
N | ciąg | Tryb sieciowy dla instrukcji RUN podczas kompilacji platformy Docker. Przekazano jako --network kompilację platformy Docker. Na przykład użyj polecenia host , aby umożliwić kontenerowi kompilacji dostęp do sieci hosta. |
remoteBuild |
N | boolean | Czy utworzyć obraz zdalnie. Jeśli ustawiono truewartość , obraz jest kompilowany zdalnie przy użyciu funkcji zdalnego kompilowania usługi Azure Container Registry. Jeśli kompilacja zdalna zakończy się niepowodzeniem, automatycznie powróci do tworzenia lokalnie przy użyciu platformy Docker lub Narzędzia Podman, azd jeśli jest dostępna. |
k8s
(obiekt) Opcje konfiguracji usługi Azure Kubernetes Service (AKS). Prawidłowy tylko wtedy, gdy host ma wartość aks.
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
deploymentPath |
N | ciąg | Ścieżka względna ze ścieżki usługi do manifestów wdrożenia k8s. Wartość domyślna: manifests. |
namespace |
N | ciąg | Przestrzeń nazw k8s wdrożonych zasobów. Po określeniu zostanie utworzona nowa przestrzeń nazw k8s, jeśli jeszcze nie istnieje. Ustawienie domyślne: nazwa projektu. |
deployment |
N | obiekt | Konfiguracja wdrożenia k8s. Zobacz Konfiguracja wdrożenia. |
service |
N | obiekt | Konfiguracja usługi k8s. Zobacz Konfiguracja usługi. |
ingress |
N | obiekt | Konfiguracja ruchu przychodzącego k8s. Zobacz Konfiguracja ruchu przychodzącego. |
helm |
N | obiekt | Konfiguracja narzędzia Helm. Zobacz Konfiguracja programu Helm. |
kustomize |
N | obiekt | Konfiguracja kustomize. Zobacz Kustomize config. |
Konfiguracja wdrożenia
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
name |
N | ciąg | Nazwa zasobu wdrożenia k8s do użycia podczas wdrażania. Jeśli nie zostanie ustawiona, wyszukaj zasób wdrożenia w tej samej przestrzeni nazw, która zawiera nazwę usługi. Wartość domyślna: nazwa usługi. |
Konfiguracja usługi
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
name |
N | ciąg | Nazwa zasobu usługi k8s, który ma być używany jako domyślny punkt końcowy usługi. Jeśli nie zostanie ustawiona, wyszukaj zasób usługi w tej samej przestrzeni nazw, która zawiera nazwę usługi. Wartość domyślna: nazwa usługi. |
Konfiguracja ruchu przychodzącego
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
name |
N | ciąg | Nazwa zasobu ruchu przychodzącego k8s do użycia jako domyślny punkt końcowy usługi. Jeśli nie zostanie ustawiona, wyszukuje zasób ruchu przychodzącego w tej samej przestrzeni nazw, która zawiera nazwę usługi. Wartość domyślna: nazwa usługi. |
relativePath |
N | ciąg | Ścieżka względna do usługi z katalogu głównego kontrolera ruchu przychodzącego. Po ustawieniu jest on dołączany do katalogu głównego ścieżki zasobu ruchu przychodzącego. |
Konfiguracja narzędzia Helm
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
repositories |
N | macierz | Repozytoria helm do dodania. |
releases |
N | macierz | Narzędzie Helm wydań do zainstalowania. |
repositories Elementy tablicy:
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
name |
Y | ciąg | Nazwa repozytorium helm. |
url |
Y | ciąg | Adres URL repozytorium helm. |
releases Elementy tablicy:
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
name |
Y | ciąg | Nazwa wydania programu Helm. |
chart |
Y | ciąg | Nazwa wykresu helm. |
version |
N | ciąg | Wersja wykresu helm. |
namespace |
N | ciąg | Przestrzeń nazw k8s do zainstalowania wykresu helm. Domyślnie jest używana przestrzeń nazw usługi. |
values |
N | ciąg | Ścieżka względna z usługi do elementu values.yaml , aby przekazać do wykresu helm. |
Konfiguracja kustomize
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
dir |
N | ciąg | Ścieżka względna do katalogu kustomize. Obsługuje podstawianie zmiennych środowiskowych. |
edits |
N | tablica stringów | Zmiany kustomize, które mają być stosowane przed wdrożeniem. Obsługuje podstawianie zmiennych środowiskowych. |
env |
N | obiekt | Pary klucz/wartość środowiska używane do generowania .env pliku w katalogu kustomize. Wartości obsługują podstawianie zmiennych środowiskowych. |
Zaczepy serwisowe
Punkty zaczepienia na poziomie usługi są wykonywane podczas zdarzeń cyklu życia usługi. Punkty zaczepienia powinny być zgodne z nazwami zdarzeń usługi poprzedzonymi prefiksem pre lub post. Podczas określania ścieżek powinny być względne względem ścieżki usługi. Aby uzyskać więcej informacji, zobacz Dostosowywanie przepływów pracy interfejsu wiersza polecenia platformy Azure przy użyciu poleceń i punktów zaczep ienia zdarzeń.
Obsługiwane punkty zaczepienia usługi: prerestore, prebuildpostpackagepostbuildpostrestoreprepublishpostpublishprepackage, predeploy, . postdeploy
Każdy punkt zaczepienia używa formatu definicji haka .
Przykłady usług
Kontener Apps z opcjami platformy Docker
services:
api:
project: ./src/api
language: js
host: containerapp
docker:
path: ./Dockerfile
context: ../
web:
project: ./src/web
language: js
host: containerapp
docker:
remoteBuild: true
Usługa Container Apps ze wstępnie utworzonego obrazu
services:
api:
image: myregistry.azurecr.io/myapp:latest
host: containerapp
Usługa AKS z punktami zaczepienia na poziomie usługi
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}
resources
(obiekt) Definicja zasobów platformy Azure używanych przez aplikację. Każdy klucz jest nazwą zasobu, a wartość jest obiektem konfiguracji zasobu. Zasoby mogą być przywołyne przez usługi za pośrednictwem uses właściwości .
Typowe właściwości zasobu
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
type |
Y | ciąg | Typ zasobu. Zobacz Typy zasobów. |
uses |
N | macierz | Inne zasoby, od których zależy ten zasób. |
existing |
N | boolean | W przypadku ustawienia wartości trueten zasób nie jest tworzony, a zamiast tego jest używany do celów odwoływania się. Wartość domyślna: false. |
Tip
Zobacz Przykład zasobów , aby zapoznać się z kompletnym przykładem YAML łączącym wiele typów zasobów.
Typy zasobów
Właściwość type określa rodzaj zasobu platformy Azure i kontroluje, które dodatkowe właściwości są dostępne.
| Wartość typu | Opis | Dodatkowe właściwości |
|---|---|---|
host.appservice |
Aplikacja internetowa usługi Azure App Service | Zobacz host.appservice właściwości. |
host.containerapp |
Aplikacja kontenera oparta na platformie Docker | Zobacz host.containerapp właściwości. |
ai.openai.model |
Wdrożony, gotowy do użycia model AI | Zobacz ai.openai.model właściwości. |
ai.project |
Projekt Firmy Microsoft Foundry z modelami | Zobacz ai.project właściwości. |
ai.search |
Wyszukiwanie AI platformy Azure | Zobacz ai.search właściwości. |
db.postgres |
Azure Database for PostgreSQL | Brak dodatkowych właściwości. |
db.mysql |
Azure Database for MySQL | Brak dodatkowych właściwości. |
db.redis |
Azure Cache for Redis | Brak dodatkowych właściwości. |
db.mongo |
Azure Cosmos DB for MongoDB | Brak dodatkowych właściwości. |
db.cosmos |
Azure Cosmos DB for NoSQL | Zobacz db.cosmos właściwości. |
messaging.eventhubs |
Przestrzeń nazw usługi Azure Event Hubs | Zobacz messaging.eventhubs właściwości. |
messaging.servicebus |
Przestrzeń nazw usługi Azure Service Bus | Zobacz messaging.servicebus właściwości. |
storage |
konto usługi Azure Storage | Zobacz storage właściwości. |
keyvault |
Azure Key Vault | Zobacz keyvault właściwości. |
host.appservice właściwości
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
port |
N | liczba całkowita | Port nasłuchiwany przez aplikację internetową. Wartość domyślna: 80. |
runtime |
Y | obiekt | Konfiguracja środowiska uruchomieniowego języka. Zobacz poniżej. |
env |
N | macierz | Zmienne środowiskowe. Każdy element ma name (wymagane), valuei secret właściwości. Obsługuje podstawianie zmiennych środowiskowych. |
startupCommand |
N | ciąg | Polecenie uruchamiania uruchamiane w ramach uruchamiania aplikacji internetowej. |
uses |
N | tablica stringów | Inne zasoby używane przez ten zasób. |
runtime Obiektu:
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
stack |
Y | ciąg | Stos środowiska uruchomieniowego języka. Dozwolone wartości: node, python. |
version |
Y | ciąg | Wersja środowiska uruchomieniowego języka. Format różni się w zależności od stosu (na przykład 22-lts dla środowiska Node 3.13 dla języka Python). |
resources:
web:
type: host.appservice
port: 8080
runtime:
stack: node
version: 22-lts
uses:
- db
host.containerapp właściwości
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
port |
N | liczba całkowita | Port, na który nasłuchuje aplikacja kontenera. Wartość domyślna: 80. |
env |
N | macierz | Zmienne środowiskowe. Każdy element ma name (wymagane), valuei secret właściwości. Obsługuje podstawianie zmiennych środowiskowych. |
uses |
N | tablica stringów | Inne zasoby używane przez ten zasób. |
ai.openai.model właściwości
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
model |
Conditional | obiekt | Bazowy model sztucznej inteligencji. Wymagane, gdy existing ma wartość false. |
existing |
N | boolean | W przypadku ustawienia wartości trueten zasób nie jest tworzony, a zamiast tego jest używany do celów odwoływania się. Wartość domyślna: false. |
model Obiektu:
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
name |
Y | ciąg | Nazwa modelu AI. |
version |
Y | ciąg | Wersja modelu AI. |
resources:
chatModel:
type: ai.openai.model
model:
name: gpt-4o
version: "2024-08-06"
ai.project właściwości
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
models |
N | macierz | Modele sztucznej inteligencji, które mają zostać wdrożone w ramach projektu sztucznej inteligencji. |
existing |
N | boolean | W przypadku ustawienia wartości trueten zasób nie jest tworzony, a zamiast tego jest używany do celów odwoływania się. Wartość domyślna: false. |
models Elementy tablicy:
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
name |
Y | ciąg | Nazwa modelu AI. |
version |
Y | ciąg | Wersja modelu AI. |
format |
Y | ciąg | Format modelu AI (na przykład Microsoft, OpenAI). |
sku |
Y | obiekt | Konfiguracja jednostki SKU dla modelu AI. |
sku Obiektu:
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
name |
Y | ciąg | Nazwa jednostki SKU (na przykład GlobalStandard). |
usageName |
Y | ciąg | Nazwa użycia jednostki SKU na potrzeby rozliczeń (na przykład OpenAI.GlobalStandard.gpt-4o-mini). |
capacity |
Y | liczba całkowita | Pojemność jednostki SKU. |
ai.search właściwości
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
existing |
N | boolean | W przypadku ustawienia wartości trueten zasób nie jest tworzony, a zamiast tego jest używany do celów odwoływania się. Wartość domyślna: false. |
db.cosmos właściwości
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
containers |
N | macierz | Kontenery do przechowywania danych. Każdy kontener przechowuje kolekcję elementów. |
containers Elementy tablicy:
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
name |
Y | ciąg | Nazwa kontenera. |
partitionKeys |
Y | macierz | Klucze partycji używane do dystrybucji danych między partycjami. Maksymalnie 3 klucze. Wartość domyślna: /id. |
messaging.eventhubs właściwości
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
hubs |
N | tablica stringów | Nazwy centrów do utworzenia w przestrzeni nazw usługi Event Hubs. |
existing |
N | boolean | W przypadku ustawienia wartości trueten zasób nie jest tworzony, a zamiast tego jest używany do celów odwoływania się. Wartość domyślna: false. |
messaging.servicebus właściwości
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
queues |
N | tablica stringów | Nazwy kolejek do utworzenia w przestrzeni nazw usługi Service Bus. |
topics |
N | tablica stringów | Nazwy tematów do utworzenia w przestrzeni nazw usługi Service Bus. |
existing |
N | boolean | W przypadku ustawienia wartości trueten zasób nie jest tworzony, a zamiast tego jest używany do celów odwoływania się. Wartość domyślna: false. |
storage właściwości
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
containers |
N | tablica stringów | Nazwy kontenerów konta usługi Azure Storage. |
existing |
N | boolean | W przypadku ustawienia wartości trueten zasób nie jest tworzony, a zamiast tego jest używany do celów odwoływania się. Wartość domyślna: false. |
keyvault właściwości
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
existing |
N | boolean | W przypadku ustawienia wartości trueten zasób nie jest tworzony, a zamiast tego jest używany do celów odwoływania się. Wartość domyślna: false. |
Przykład zasobów
resources:
db:
type: db.postgres
cache:
type: db.redis
chatModel:
type: ai.openai.model
model:
name: gpt-4o
version: "2024-08-06"
web:
type: host.containerapp
port: 3100
uses:
- db
- chatModel
pipeline
(obiekt) Definicja potoku ciągłej integracji.
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
provider |
N | ciąg | Dostawca potoku, który ma być używany do ciągłej integracji. Wartość domyślna: github. Dozwolone wartości: github, azdo. |
variables |
N | tablica stringów |
azd Lista zmiennych środowiskowych, które mają być używane w potoku jako zmienne. |
secrets |
N | tablica stringów |
azd Lista zmiennych środowiskowych, które mają być używane w potoku jako wpisy tajne. |
pipeline:
provider: azdo
variables:
- CUSTOM_SETTING
secrets:
- API_KEY
hooks
(obiekt) Haki na poziomie polecenia. Haki powinny być zgodne z nazwami poleceń azd poprzedzonymi pre lub post w zależności od tego, kiedy skrypt powinien zostać wykonany. Podczas określania ścieżek powinny być względne względem ścieżki projektu. Aby uzyskać więcej informacji, zobacz Dostosowywanie przepływów pracy interfejsu wiersza polecenia platformy Azure przy użyciu poleceń i punktów zaczep ienia zdarzeń.
Obsługiwane haki poleceń: preprovision, postprovisionpreinfracreateprerestorepostpublishpostrestorepostdeploypredeployprepublishpostpackageprepackagepostuppostdownpostinfradeletepreuppostinfracreatepreinfradeletepredown.
Każdy punkt zaczepienia używa formatu definicji haka .
Tip
Zobacz Przykłady punktów zaczepienia , aby zapoznać się z kompletnymi przykładami YAML, w tym hakami specyficznymi dla platformy, typowymi funkcjami wykonawczych i wieloma punktami zaczepienia na zdarzenie.
hooks:
preprovision:
shell: sh
run: ./scripts/setup.sh
postdeploy:
shell: sh
run: azd env set APP_URL ${SERVICE_WEB_ENDPOINT_URL}
Definicja haka
Hak może być pojedynczym obiektem haka lub tablicą obiektów haka. Każdy obiekt haka ma następujące właściwości:
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
run |
Conditional | ciąg | Wbudowany skrypt lub ścieżka względna skryptu. Wymagane podczas określania shellwartości , , kind, dirinteractive, continueOnError, secretslub config. Podczas określania skryptu wbudowanego należy również określić shell parametr do użycia. Powłoka jest automatycznie wnioskowana podczas korzystania ze ścieżek plików. |
shell |
N | ciąg | Typ powłoki do wykonywania skryptów. Wartość domyślna: sh. Dozwolone wartości: sh, pwsh. |
kind |
N | ciąg | Rodzaj funkcji wykonawczej dla skryptu haka. Po pominięciu typ jest automatycznie wykrywany z rozszerzenia pliku ścieżki run (na przykład .py staje się python, .ps1 staje się pwsh). Dozwolone wartości: sh, pwsh, js, ts, python, dotnet. |
dir |
N | ciąg | Katalog roboczy na potrzeby wykonywania haka. Używany jako katalog główny projektu do instalacji zależności i jako katalog roboczy podczas uruchamiania skryptu. Ścieżki względne są rozpoznawane z katalogu głównego projektu lub usługi. Po pominięciu zostanie pominięta wartość domyślna katalogu zawierającego plik skryptu. |
continueOnError |
N | boolean | Czy błąd skryptu azd zatrzymuje polecenie. Wartość domyślna: false. |
interactive |
N | boolean | Określa, czy skrypt działa w trybie interaktywnym, powiązanie z stdinelementami i stdoutstderr uruchomionej konsoli. Wartość domyślna: false. |
windows |
N | obiekt | Po określeniu zastępuje konfigurację punktów zaczepienia podczas wykonywania w środowiskach systemu Windows. Używa tego samego formatu obiektu zaczepienia. |
posix |
N | obiekt | Po określeniu zastępuje konfigurację punktów zaczepienia podczas wykonywania w środowiskach POSIX (Linux i macOS). Używa tego samego formatu obiektu zaczepienia. |
secrets |
N | obiekt | Mapa azd zmiennych środowiskowych w celu zaczepienia wpisów tajnych. Jeśli zmienna została ustawiona jako wpis tajny w środowisku, wartość wpisu tajnego jest przekazywana do haka. |
config |
N | obiekt | Konfiguracja specyficzna dla funkcji wykonawczej. Dostępne właściwości zależą od kind wartości. Zobacz Konfiguracja funkcji wykonawczej haka. |
Note
Po określeniu runwartości posixwindows i nie można używać właściwości , , continueOnErrorkinddirinteractiveshellsecretsi config na najwyższym poziomie. Zamiast tego użyj obiektów specyficznych dla platformy.
Konfiguracja funkcji wykonawczej haka
Właściwość config akceptuje różne właściwości w zależności od kind wartości.
Konfiguracja języków JavaScript i TypeScript (js, ts)
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
packageManager |
N | ciąg | Menedżer pakietów do użycia na potrzeby instalacji zależności. Zastępuje automatyczne wykrywanie plików blokady. Dozwolone wartości: npm, pnpm, yarn. |
Konfiguracja języka Python
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
virtualEnvName |
N | ciąg | Nazwa katalogu dla środowiska wirtualnego języka Python. Wartości domyślne do automatycznego wykrywania (.venv, venv) lub {baseName}_env. |
Konfiguracja platformy .NET (dotnet)
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
configuration |
N | ciąg | Konfiguracja programu MSBuild do kompilowania skryptu zaczepienia (na przykład Debug, Release). |
framework |
N | ciąg | Docelowy pseudonim platformy do kompilowania i uruchamiania skryptu haka (na przykład net8.0, net10.0). |
Konfiguracja powłoki (sh, pwsh)
Funkcje wykonawcze powłoki nie obsługują config obecnie właściwości.
Przykłady punktów zaczepienia
Haki specyficzne dla platformy
hooks:
preprovision:
windows:
shell: pwsh
run: ./scripts/setup.ps1
posix:
shell: sh
run: ./scripts/setup.sh
Punkt zaczepienia języka Python z rodzajem
hooks:
postprovision:
kind: python
run: ./scripts/seed-data.py
dir: ./scripts
config:
virtualEnvName: .venv
Wiele punktów zaczepienia dla pojedynczego zdarzenia
hooks:
postprovision:
- shell: sh
run: ./scripts/step1.sh
- shell: sh
run: ./scripts/step2.sh
requiredVersions
(obiekt) Zapewnia dodatkową konfigurację dla wymaganych wersji azd rozszerzeń i.
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
azd |
N | ciąg | Zakres obsługiwanych wersji azd dla tego projektu. Jeśli wersja elementu azd znajduje się poza tym zakresem, nie można załadować projektu. Obsługuje składnię zakresu semver. |
extensions |
N | obiekt | Mapa wymaganych rozszerzeń i ograniczeń wersji dla tego projektu. Obsługuje ograniczenia semver. Jeśli wersja zostanie pominięta, zostanie zainstalowana najnowsza wersja. |
requiredVersions:
azd: ">= 0.6.0-beta.3"
extensions:
azure.ai.agents: ">=1.0.0"
my-extension: latest
state
(obiekt) Zapewnia dodatkową konfigurację zarządzania stanami.
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
remote |
N | obiekt | Zapewnia dodatkową konfigurację zdalnego zarządzania stanem. Zobacz: state.remote. |
state.remote
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
backend |
Y | ciąg | Typ zaplecza stanu zdalnego. Wartość domyślna: AzureBlobStorage. Dozwolone wartości: AzureBlobStorage. |
config |
Conditional | obiekt | Konfiguracja specyficzna dla zaplecza. Wymagane, gdy backend ma wartość AzureBlobStorage. Zobacz Konfiguracja usługi Azure Blob Storage. |
Konfiguracja usługi Azure Blob Storage
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
accountName |
Y | ciąg | Nazwa konta Azure Storage. |
containerName |
N | ciąg | Nazwa kontenera usługi Azure Storage. Wartość domyślna nazwy projektu, jeśli nie zostanie określona. |
endpoint |
N | ciąg | Punkt końcowy usługi Azure Storage. Wartość domyślna: blob.core.windows.net. |
state:
remote:
backend: AzureBlobStorage
config:
accountName: mystorageaccount
containerName: azd-state
platform
(obiekt) Udostępnia dodatkową konfigurację funkcji specyficznych dla platformy, takich jak Centrum deweloperów platformy.
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
type |
Y | ciąg | Typ platformy. Dozwolone wartości: devcenter. |
config |
N | obiekt | Konfiguracja specyficzna dla platformy. Zobacz Konfiguracja Centrum deweloperów. |
Konfiguracja Centrum deweloperów
Dostępne, gdy type ma wartość :devcenter
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
name |
N | ciąg | Nazwa Centrum deweloperów platformy Azure. Używany jako domyślne centrum deweloperskie dla tego projektu. |
project |
N | ciąg | Nazwa projektu Centrum deweloperów platformy Azure. |
catalog |
N | ciąg | Nazwa katalogu centrum deweloperów platformy Azure. |
environmentDefinition |
N | ciąg | Nazwa definicji środowiska katalogu Centrum deweloperów. |
environmentType |
N | ciąg | Typ środowiska projektu Centrum deweloperów używany dla środowiska wdrażania. |
platform:
type: devcenter
config:
name: my-devcenter
project: my-project
catalog: my-catalog
environmentDefinition: my-env-def
environmentType: dev
workflows
(obiekt) Zapewnia dodatkową konfigurację przepływów pracy, takich jak zastępowanie azd up zachowania.
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
up |
N | obiekt lub tablica | Po określeniu azd up zastępuje domyślne zachowanie przepływu pracy. |
Kroki przepływu pracy
Przepływ up pracy akceptuje tablicę steps (lub można ją określić bezpośrednio jako tablicę). Każdy krok uruchamia azd polecenie.
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
azd |
Y | ciąg lub obiekt | Polecenie azd do wykonania. Może być ciągiem (na przykład provision) lub obiektem z tablicą args . |
Konfigurowanie kolejności kroku przepływu pracy
Poniższy azure.yaml plik zmienia domyślne zachowanie, azd up aby przenieść azd package krok po azd provision kroku. Użyj tego podejścia w scenariuszach, w których należy znać adresy URL zasobów podczas procesu kompilacji lub pakowania.
name: todo-nodejs-mongo
metadata:
template: todo-nodejs-mongo@0.0.1-beta
workflows:
up:
steps:
- azd: provision
- azd: package
- azd: deploy --all
cloud
(obiekt) Zapewnia dodatkową konfigurację wdrażania w suwerennych chmurach, takich jak Azure Government. Domyślna chmura to AzureCloud.
| Majątek | Wymagane | Typ | Opis |
|---|---|---|---|
name |
N | ciąg | Nazwa środowiska chmury. Dozwolone wartości: AzureCloud, AzureChinaCloud, AzureUSGovernment. |
cloud:
name: AzureUSGovernment
Zażądaj pomocy
Aby uzyskać informacje na temat tworzenia usterki, żądania pomocy lub zaproponowania nowej funkcji dla interfejsu wiersza polecenia dla deweloperów platformy Azure, odwiedź stronę rozwiązywania problemów i pomocy technicznej .