Microsoft.App containerApps 2023-05-01
Definicja zasobu Bicep
Typ zasobu containerApps można wdrożyć za pomocą operacji docelowych:
- Grupy zasobów — zobacz polecenia wdrażania grupy zasobów
Aby uzyskać listę zmienionych właściwości w każdej wersji interfejsu API, zobacz dziennik zmian.
Format zasobu
Aby utworzyć zasób Microsoft.App/containerApps, dodaj następujący kod Bicep do szablonu.
resource symbolicname 'Microsoft.App/containerApps@2023-05-01' = {
name: 'string'
location: 'string'
tags: {
tagName1: 'tagValue1'
tagName2: 'tagValue2'
}
extendedLocation: {
name: 'string'
type: 'CustomLocation'
}
identity: {
type: 'string'
userAssignedIdentities: {
{customized property}: {}
}
}
managedBy: 'string'
properties: {
configuration: {
activeRevisionsMode: 'string'
dapr: {
appId: 'string'
appPort: int
appProtocol: 'string'
enableApiLogging: bool
enabled: bool
httpMaxRequestSize: int
httpReadBufferSize: int
logLevel: 'string'
}
ingress: {
allowInsecure: bool
clientCertificateMode: 'string'
corsPolicy: {
allowCredentials: bool
allowedHeaders: [
'string'
]
allowedMethods: [
'string'
]
allowedOrigins: [
'string'
]
exposeHeaders: [
'string'
]
maxAge: int
}
customDomains: [
{
bindingType: 'string'
certificateId: 'string'
name: 'string'
}
]
exposedPort: int
external: bool
ipSecurityRestrictions: [
{
action: 'string'
description: 'string'
ipAddressRange: 'string'
name: 'string'
}
]
stickySessions: {
affinity: 'string'
}
targetPort: int
traffic: [
{
label: 'string'
latestRevision: bool
revisionName: 'string'
weight: int
}
]
transport: 'string'
}
maxInactiveRevisions: int
registries: [
{
identity: 'string'
passwordSecretRef: 'string'
server: 'string'
username: 'string'
}
]
secrets: [
{
identity: 'string'
keyVaultUrl: 'string'
name: 'string'
value: 'string'
}
]
service: {
type: 'string'
}
}
environmentId: 'string'
managedEnvironmentId: 'string'
template: {
containers: [
{
args: [
'string'
]
command: [
'string'
]
env: [
{
name: 'string'
secretRef: 'string'
value: 'string'
}
]
image: 'string'
name: 'string'
probes: [
{
failureThreshold: int
httpGet: {
host: 'string'
httpHeaders: [
{
name: 'string'
value: 'string'
}
]
path: 'string'
port: int
scheme: 'string'
}
initialDelaySeconds: int
periodSeconds: int
successThreshold: int
tcpSocket: {
host: 'string'
port: int
}
terminationGracePeriodSeconds: int
timeoutSeconds: int
type: 'string'
}
]
resources: {
cpu: json('decimal-as-string')
memory: 'string'
}
volumeMounts: [
{
mountPath: 'string'
subPath: 'string'
volumeName: 'string'
}
]
}
]
initContainers: [
{
args: [
'string'
]
command: [
'string'
]
env: [
{
name: 'string'
secretRef: 'string'
value: 'string'
}
]
image: 'string'
name: 'string'
resources: {
cpu: json('decimal-as-string')
memory: 'string'
}
volumeMounts: [
{
mountPath: 'string'
subPath: 'string'
volumeName: 'string'
}
]
}
]
revisionSuffix: 'string'
scale: {
maxReplicas: int
minReplicas: int
rules: [
{
azureQueue: {
auth: [
{
secretRef: 'string'
triggerParameter: 'string'
}
]
queueLength: int
queueName: 'string'
}
custom: {
auth: [
{
secretRef: 'string'
triggerParameter: 'string'
}
]
metadata: {
{customized property}: 'string'
}
type: 'string'
}
http: {
auth: [
{
secretRef: 'string'
triggerParameter: 'string'
}
]
metadata: {
{customized property}: 'string'
}
}
name: 'string'
tcp: {
auth: [
{
secretRef: 'string'
triggerParameter: 'string'
}
]
metadata: {
{customized property}: 'string'
}
}
}
]
}
serviceBinds: [
{
name: 'string'
serviceId: 'string'
}
]
terminationGracePeriodSeconds: int
volumes: [
{
mountOptions: 'string'
name: 'string'
secrets: [
{
path: 'string'
secretRef: 'string'
}
]
storageName: 'string'
storageType: 'string'
}
]
}
workloadProfileName: 'string'
}
}
Wartości właściwości
containerApps
Nazwa | Opis | Wartość |
---|---|---|
name | Nazwa zasobu | ciąg (wymagany) Limit znaków: 2–32 Prawidłowe znaki: Małe litery, cyfry i łączniki. Zacznij od litery i kończy się alfanumeryczną. |
location | Lokalizacja geograficzna, w której znajduje się zasób | ciąg (wymagany) |
tags | Tagi zasobów. | Słownik nazw tagów i wartości. Zobacz Tagi w szablonach |
extendedLocation | Typ złożony lokalizacji rozszerzonej. | ExtendedLocation |
identity | tożsamości zarządzane dla aplikacji kontenera do interakcji z innymi usługami platformy Azure bez obsługi żadnych wpisów tajnych ani poświadczeń w kodzie. | Identyfikator usługi zarządzanej |
managedBy | W pełni kwalifikowany identyfikator zasobu, który zarządza tym zasobem. Wskazuje, czy ten zasób jest zarządzany przez inny zasób platformy Azure. Jeśli tak jest, wdrożenie trybu pełnego nie spowoduje usunięcia zasobu, jeśli zostanie on usunięty z szablonu, ponieważ jest zarządzany przez inny zasób. | ciąg |
properties | Właściwości specyficzne dla zasobu ContainerApp | ContainerAppProperties |
ExtendedLocation
Nazwa | Opis | Wartość |
---|---|---|
name | Nazwa lokalizacji rozszerzonej. | ciąg |
typ | Typ lokalizacji rozszerzonej. | "CustomLocation" |
Identyfikator usługi zarządzanej
Nazwa | Opis | Wartość |
---|---|---|
typ | Typ tożsamości usługi zarządzanej (gdzie dozwolone są typy SystemAssigned i UserAssigned). | "Brak" "SystemAssigned" "SystemAssigned,UserAssigned" "UserAssigned" (wymagane) |
userAssignedIdentities | Zestaw tożsamości przypisanych przez użytkownika skojarzonych z zasobem. Klucze słownika userAssignedIdentities będą identyfikatorami zasobów usługi ARM w postaci: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Wartości słownika mogą być pustymi obiektami ({}) w żądaniach. | UserAssignedIdentities |
UserAssignedIdentities
Nazwa | Opis | Wartość |
---|---|---|
{niestandardowa właściwość} | UserAssignedIdentity |
UserAssignedIdentity
Ten obiekt nie zawiera żadnych właściwości do ustawienia podczas wdrażania. Wszystkie właściwości to ReadOnly.
ContainerAppProperties
Nazwa | Opis | Wartość |
---|---|---|
konfiguracja | Nieobsługiwane właściwości konfiguracji aplikacji kontenera. | Konfiguracja |
environmentId | Identyfikator zasobu środowiska. | ciąg |
managedEnvironmentId | Przestarzałe. Identyfikator zasobu środowiska aplikacji kontenera. | ciąg |
szablon | Definicja aplikacji kontenera w wersji. | Szablon |
workloadProfileName | Nazwa profilu obciążenia do przypięcia na potrzeby wykonywania aplikacji kontenera. | ciąg |
Konfigurowanie
Nazwa | Opis | Wartość |
---|---|---|
activeRevisionsMode | Tryb ActiveRevisionsMode określa sposób obsługi aktywnych poprawek dla aplikacji kontenera: {list} {item} Wiele: wiele poprawek może być aktywnych. {/item} {item} Pojedynczy: tylko jedna poprawka może być aktywna jednocześnie. Wagi poprawek nie mogą być używane w tym trybie. Jeśli nie podano żadnej wartości, jest to wartość domyślna. {/item} {/list} |
"Wiele" "Pojedynczy" |
dapr | Konfiguracja języka Dapr dla aplikacji kontenera. | Dapr |
ruch przychodzący | Konfiguracje ruchu przychodzącego. | Ruch przychodzący |
maxInactiveRevisions | Opcjonalny. Maksymalna liczba nieaktywnych poprawek, które może mieć aplikacja kontenera. | int |
Rejestrów | Kolekcja prywatnych poświadczeń rejestru kontenerów dla kontenerów używanych przez aplikację kontenerów | RegistryCredentials[] |
wpisy tajne | Zbieranie wpisów tajnych używanych przez aplikację kontenera | Wpis tajny[] |
usługa | Aplikacja kontenera, która ma być deweloperem App Service kontenera | Usługa |
Dapr
Nazwa | Opis | Wartość |
---|---|---|
appId | Identyfikator aplikacji języka Dapr | ciąg |
appPort | Informuje dapr, na którym porcie nasłuchuje aplikacja | int |
appProtocol | Informuje dapr, którego protokołu używa aplikacja. Prawidłowe opcje to http i grpc. Wartość domyślna to http | 'grpc' "http" |
enableApiLogging | Włącza rejestrowanie interfejsu API dla przyczepki Dapr | bool |
enabled | Wartość logiczna wskazująca, czy samochód boczny Dapr jest włączony | bool |
httpMaxRequestSize | Zwiększenie maksymalnego rozmiaru treści żądania http i grpc server parametru w MB do obsługi przekazywania dużych plików. Wartość domyślna to 4 MB. | int |
httpReadBufferSize | Maksymalny rozmiar buforu odczytu nagłówka HTTP w bazie wiedzy dapr do obsługi podczas wysyłania nagłówków z wieloma kb. Wartość domyślna to 65 KB. | int |
Loglevel | Ustawia poziom dziennika dla przyczepki Dapr. Dozwolone wartości to debugowanie, informacje, ostrzeganie, błąd. Wartość domyślna to informacje. | "debuguj" "błąd" "informacje" "ostrzegaj" |
Ruch przychodzący
Nazwa | Opis | Wartość |
---|---|---|
allowInsecure | Wartość logiczna wskazująca, czy połączenia HTTP z są dozwolone. W przypadku ustawienia wartości false połączeń HTTP są automatycznie przekierowywane do połączeń HTTPS | bool |
clientCertificateMode | Tryb certyfikatu klienta na potrzeby uwierzytelniania mTLS. Ignoruj wskazuje, że serwer odrzuca certyfikat klienta podczas przekazywania dalej. Pozycja Accept wskazuje, że serwer przekazuje certyfikat klienta, ale nie wymaga certyfikatu klienta. Pozycja Wymagaj wskazuje, że serwer wymaga certyfikatu klienta. | "Akceptuj" "Ignoruj" "wymagaj" |
corsPolicy | Zasady CORS dla aplikacji kontenera | CorsPolicy |
customDomains | niestandardowe powiązania domeny dla nazw hostów usługi Container Apps. | Domena niestandardowa[] |
exposedPort | Uwidoczniony port w kontenerach dla ruchu TCP z ruchu przychodzącego | int |
external | Wartość logiczna wskazująca, czy aplikacja uwidacznia zewnętrzny punkt końcowy HTTP | bool |
ipSecurityRestrictions | Reguły ograniczania przychodzącego adresu IP. | IpSecurityRestrictionRule[] |
stickySessions | Sesje sticky dla trybu pojedynczej poprawki | Ruch przychodzącyStickySessions |
targetPort | Docelowy port w kontenerach dla ruchu przychodzącego | int |
Ruchu | Wagi ruchu dla wersji aplikacji | TrafficWeight[] |
transport | Protokół transportu ruchu przychodzącego | "auto" "http" "http2" "tcp" |
CorsPolicy
Nazwa | Opis | Wartość |
---|---|---|
allowCredentials | Określa, czy zasób zezwala na poświadczenia | bool |
allowedHeaders | Określa zawartość nagłówka access-control-allow-headers | ciąg[] |
allowedMethods | Określa zawartość nagłówka access-control-allow-methods | ciąg[] |
allowedOrigins | Określa zawartość nagłówka access-control-allow-origins | string[] (wymagane) |
exposeHeaders | Określa zawartość nagłówka access-control-expose-headers | ciąg[] |
Maxage | Określa zawartość nagłówka access-control-max-age | int |
Domena niestandardowa
Nazwa | Opis | Wartość |
---|---|---|
bindingType | Custom Domain typ powiązania. | "Wyłączone" "SniEnabled" |
certificateId | Identyfikator zasobu certyfikatu, który ma być powiązany z tą nazwą hosta. Musi istnieć w środowisku zarządzanym. | ciąg |
name | Nazwa hosta. | ciąg (wymagany) |
IpSecurityRestrictionRule
Nazwa | Opis | Wartość |
---|---|---|
action | Zezwalaj na reguły zezwalania lub odmowy w celu określenia dla przychodzącego adresu IP. Uwaga: Reguły mogą składać się tylko ze wszystkich dozwolonych lub WSZYSTKICH odmów | "Zezwalaj" "Odmów" (wymagane) |
description (opis) | Opisz regułę ograniczeń adresów IP, która jest wysyłana do kontenera-app. Jest to pole opcjonalne. | ciąg |
ipAddressRange | Notacja CIDR zgodna z przychodzącym adresem IP | ciąg (wymagany) |
name | Nazwa reguły ograniczeń adresów IP. | ciąg (wymagany) |
Ruch przychodzącyStickySessions
Nazwa | Opis | Wartość |
---|---|---|
koligacja | Koligacja sesji sticky | "brak" "sticky" |
Waga ruchu
Nazwa | Opis | Wartość |
---|---|---|
label | Kojarzy etykietę ruchu z poprawką | ciąg |
latestRevision | Wskazuje, że waga ruchu należy do najnowszej stabilnej wersji | bool |
revisionName | Nazwa poprawki | ciąg |
waga | Waga ruchu przypisana do poprawki | int |
RegistryCredentials
Nazwa | Opis | Wartość |
---|---|---|
identity | Tożsamość zarządzana używana do uwierzytelniania za pomocą Azure Container Registry. W przypadku tożsamości przypisanych przez użytkownika użyj pełnego identyfikatora zasobu tożsamości przypisanej przez użytkownika. W przypadku tożsamości przypisanych przez system użyj polecenia "system" | ciąg |
passwordSecretRef | Nazwa wpisu tajnego zawierającego hasło logowania rejestru | ciąg |
serwer | Serwer usługi Container Registry | ciąg |
nazwa użytkownika | Nazwa użytkownika usługi Container Registry | ciąg |
Wpis tajny
Nazwa | Opis | Wartość |
---|---|---|
identity | Identyfikator zasobu tożsamości zarządzanej do uwierzytelniania za pomocą usługi Azure Key Vault lub system do używania tożsamości przypisanej przez system. | ciąg |
keyVaultUrl | Adres URL usługi Azure Key Vault wskazujący wpis tajny przywołyny przez aplikację kontenera. | ciąg |
name | Nazwa wpisu tajnego. | ciąg |
wartość | Wartość wpisu tajnego. | ciąg Ograniczenia: Wartość wrażliwa. Przekaż jako bezpieczny parametr. |
Usługa
Nazwa | Opis | Wartość |
---|---|---|
typ | Typ usługi Dev ContainerApp | ciąg (wymagany) |
Template
Nazwa | Opis | Wartość |
---|---|---|
containers | Lista definicji kontenerów dla aplikacji kontenera. | Kontener[] |
initContainers | Lista wyspecjalizowanych kontenerów uruchamianych przed kontenerami aplikacji. | InitContainer[] |
revisionSuffix | Sufiks przyjazny dla użytkownika, który jest dołączany do nazwy poprawki | ciąg |
scale | Właściwości skalowania dla aplikacji kontenera. | Skalowanie |
serviceBinds | Lista usług app services kontenera powiązanych z aplikacją | ServiceBind[] |
terminationGracePeriodSeconds | Opcjonalny czas trwania w sekundach, przez który wystąpienie aplikacji kontenera musi zostać bezpiecznie zakończone. Wartość musi być nieujemną liczbą całkowitą. Wartość zero wskazuje zatrzymać się natychmiast za pośrednictwem sygnału zabicia (brak możliwości zamknięcia). Jeśli ta wartość jest zerowa, zostanie użyty domyślny okres prolongaty. Ustaw tę wartość dłużej niż oczekiwany czas oczyszczania dla procesu. Wartość domyślna to 30 sekund. | int |
volumes | Lista definicji woluminów dla aplikacji kontenera. | Wolumin[] |
Kontener
Nazwa | Opis | Wartość |
---|---|---|
args | Argumenty polecenia uruchamiania kontenera. | ciąg[] |
command | Polecenie uruchamiania kontenera. | ciąg[] |
Env | Zmienne środowiskowe kontenera. | EnvironmentVar[] |
image (obraz) | Tag obrazu kontenera. | ciąg |
name | Niestandardowa nazwa kontenera. | ciąg |
Sondy | Lista sond dla kontenera. | ContainerAppProbe[] |
zasoby | Wymagania dotyczące zasobów kontenera. | ContainerResources |
volumeMounts | Instalacja woluminu kontenera. | VolumeMount[] |
EnvironmentVar
Nazwa | Opis | Wartość |
---|---|---|
name | Nazwa zmiennej środowiskowej. | ciąg |
secretRef | Nazwa wpisu tajnego aplikacji kontenera, z którego ma być pobierana wartość zmiennej środowiskowej. | ciąg |
wartość | Wartość zmiennej środowiskowej bez wpisu tajnego. | ciąg |
ContainerAppProbe
Nazwa | Opis | Wartość |
---|---|---|
failureThreshold | Minimalna liczba kolejnych niepowodzeń dla sondy, które mają zostać uznane za zakończone niepowodzeniem po pomyślnym zakończeniu. Wartość domyślna to 3. Wartość minimalna to 1. Maksymalna wartość to 10. | int |
httpGet | HttpGet określa żądanie http do wykonania. | ContainerAppProbeHttpGet |
initialDelaySeconds | Liczba sekund po uruchomieniu kontenera przed zainicjowanymi sondami aktualności. Wartość minimalna to 1. Maksymalna wartość to 60. | int |
periodSeconds | Jak często (w sekundach) wykonać sondę. Wartość domyślna to 10 sekund. Wartość minimalna to 1. Maksymalna wartość to 240. | int |
successThreshold | Minimalna liczba kolejnych sukcesów dla sondy, która ma zostać uznana za pomyślną po nieudanej awarii. Wartość domyślna to 1. Musi być 1 dla utrzymania i uruchamiania. Wartość minimalna to 1. Maksymalna wartość to 10. | int |
tcpSocket | TcpSocket określa akcję obejmującą port TCP. Punkty zaczepienia TCP nie są jeszcze obsługiwane. | ContainerAppProbeTcpSocket |
terminationGracePeriodSeconds | Opcjonalny czas trwania w sekundach zasobnika musi zakończyć się bezproblemowo po awarii sondy. Okres prolongaty to czas trwania w sekundach po wysłaniu sygnału zakończenia procesów uruchomionych w zasobniku i czasie, w którym procesy są wymuszone zatrzymane za pomocą sygnału zabijania. Ustaw tę wartość dłużej niż oczekiwany czas oczyszczania procesu. Jeśli ta wartość jest zerowa, zostanie użyte zakończenie zasobnikaGracePeriodSeconds. W przeciwnym razie ta wartość zastępuje wartość podaną przez specyfikację zasobnika. Wartość musi być nie ujemną liczbą całkowitą. Wartość zero wskazuje, że zatrzymaj się natychmiast za pośrednictwem sygnału zabijania (brak możliwości zamknięcia). Jest to pole alfa i wymaga włączenia bramki funkcji ProbeTerminationGracePeriod. Maksymalna wartość to 3600 sekund (1 godzina) | int |
timeoutSeconds | Liczba sekund, po których sonda upłynął limit czasu. Wartość domyślna to 1 sekunda. Wartość minimalna to 1. Maksymalna wartość to 240. | int |
typ | Typ sondy. | "Liveness" "Gotowość" "Uruchamianie" |
ContainerAppProbeHttpGet
Nazwa | Opis | Wartość |
---|---|---|
host | Nazwa hosta, z którymi ma nawiązać połączenie, domyślnie jest to adres IP zasobnika. Prawdopodobnie chcesz ustawić wartość "Host" w elementach httpHeaders. | ciąg |
httpHeaders | Nagłówki niestandardowe do ustawienia w żądaniu. Protokół HTTP zezwala na powtarzające się nagłówki. | ContainerAppProbeHttpGetHttpHeadersItem[] |
path | Ścieżka dostępu do serwera HTTP. | ciąg |
port | Nazwa lub numer portu do uzyskania dostępu do kontenera. Liczba musi należeć do zakresu od 1 do 65535. Nazwa musi być IANA_SVC_NAME. | int (wymagane) |
schemat | Schemat używany do nawiązywania połączenia z hostem. Wartość domyślna to HTTP. | "HTTP" "HTTPS" |
ContainerAppProbeHttpGetHttpHeadersItem
Nazwa | Opis | Wartość |
---|---|---|
name | Nazwa pola nagłówka | ciąg (wymagany) |
wartość | Wartość pola nagłówka | ciąg (wymagany) |
ContainerAppProbeTcpSocket
Nazwa | Opis | Wartość |
---|---|---|
host | Opcjonalnie: nazwa hosta do nawiązania połączenia domyślnie z adresem IP zasobnika. | ciąg |
port | Numer lub nazwa portu w celu uzyskania dostępu do kontenera. Liczba musi należeć do zakresu od 1 do 65535. Nazwa musi być IANA_SVC_NAME. | int (wymagane) |
ContainerResources
Nazwa | Opis | Wartość |
---|---|---|
Procesora | Wymagany procesor CPU w rdzeniach, np. 0,5 Aby określić wartość dziesiętną, użyj funkcji json(). | int lub json dziesiętny |
pamięć | Wymagana pamięć, np. "250 Mb" | ciąg |
VolumeMount
Nazwa | Opis | Wartość |
---|---|---|
mountPath | Ścieżka w kontenerze, w którym należy zamontować wolumin. Nie może zawierać elementu ":". | ciąg |
subPath | Ścieżka w woluminie, z którego należy zamontować wolumin kontenera. Wartość domyślna to "" (katalog główny woluminu). | ciąg |
volumeName | Musi to być zgodne z nazwą woluminu. | ciąg |
InitContainer
Nazwa | Opis | Wartość |
---|---|---|
args | Argumenty poleceń uruchamiania kontenera. | ciąg[] |
command | Polecenie uruchamiania kontenera. | ciąg[] |
Env | Zmienne środowiskowe kontenera. | EnvironmentVar[] |
image (obraz) | Tag obrazu kontenera. | ciąg |
name | Niestandardowa nazwa kontenera. | ciąg |
zasoby | Wymagania dotyczące zasobów kontenera. | ContainerResources |
volumeMounts | Instalacja woluminu kontenera. | VolumeMount[] |
Skalowanie
Nazwa | Opis | Wartość |
---|---|---|
maxReplicas | Opcjonalny. Maksymalna liczba replik kontenerów. Wartość domyślna to 10, jeśli nie zostanie ustawiona. | int |
minReplicas | Opcjonalny. Minimalna liczba replik kontenerów. | int |
rules | Reguły skalowania. | ScaleRule[] |
ScaleRule
Nazwa | Opis | Wartość |
---|---|---|
azureQueue | Skalowanie oparte na kolejce platformy Azure. | QueueScaleRule |
niestandardowe | Niestandardowa reguła skalowania. | CustomScaleRule |
http | Skalowanie na podstawie żądań HTTP. | HttpScaleRule |
name | Nazwa reguły skalowania | ciąg |
Tcp | Skalowanie oparte na żądaniach TCP. | TcpScaleRule |
QueueScaleRule
Nazwa | Opis | Wartość |
---|---|---|
Auth | Wpisy tajne uwierzytelniania dla reguły skalowania kolejek. | ScaleRuleAuth[] |
queueLength | Długość kolejki. | int |
Queuename | Nazwa kolejki. | ciąg |
ScaleRuleAuth
Nazwa | Opis | Wartość |
---|---|---|
secretRef | Nazwa wpisu tajnego, z którego chcesz ściągnąć parametry uwierzytelniania. | ciąg |
triggerParameter | Parametr wyzwalacza, który używa wpisu tajnego | ciąg |
CustomScaleRule
Nazwa | Opis | Wartość |
---|---|---|
Auth | Wpisy tajne uwierzytelniania dla reguły skalowania niestandardowego. | ScaleRuleAuth[] |
metadane | Właściwości metadanych opisujące niestandardową regułę skalowania. | CustomScaleRuleMetadata |
typ | Typ reguły skalowania niestandardowego np. azure-servicebus, redis itp. |
ciąg |
CustomScaleRuleMetadata
Nazwa | Opis | Wartość |
---|---|---|
{niestandardowa właściwość} | ciąg |
HttpScaleRule
Nazwa | Opis | Wartość |
---|---|---|
Auth | Wpisy tajne uwierzytelniania dla reguły skalowania niestandardowego. | ScaleRuleAuth[] |
metadane | Właściwości metadanych opisujące regułę skalowania http. | HttpScaleRuleMetadata |
HttpScaleRuleMetadata
Nazwa | Opis | Wartość |
---|---|---|
{niestandardowa właściwość} | ciąg |
TcpScaleRule
Nazwa | Opis | Wartość |
---|---|---|
Auth | Wpisy tajne uwierzytelniania dla reguły skalowania tcp. | ScaleRuleAuth[] |
metadane | Właściwości metadanych opisujące regułę skalowania tcp. | TcpScaleRuleMetadata |
TcpScaleRuleMetadata
Nazwa | Opis | Wartość |
---|---|---|
{niestandardowa właściwość} | ciąg |
ServiceBind
Nazwa | Opis | Wartość |
---|---|---|
name | Nazwa powiązania usługi | ciąg |
serviceId | Identyfikator zasobu usługi docelowej | ciąg |
Wolumin
Nazwa | Opis | Wartość |
---|---|---|
mountOptions | Opcje instalacji używane podczas instalowania pliku AzureFile. Musi być ciągiem rozdzielanym przecinkami. | ciąg |
name | Nazwa woluminu. | ciąg |
wpisy tajne | Lista wpisów tajnych do dodania w woluminie. Jeśli nie podano żadnych wpisów tajnych, wszystkie wpisy tajne w kolekcji zostaną dodane do woluminu. | SecretVolumeItem[] |
storageName | Nazwa zasobu magazynu. Nie trzeba podawać wartości EmptyDir i Secret. | ciąg |
storageType | Typ magazynu woluminu. Jeśli nie podano, użyj wartości EmptyDir. | "AzureFile" "EmptyDir" "Wpis tajny" |
SecretVolumeItem
Nazwa | Opis | Wartość |
---|---|---|
path | Ścieżka do wpisu tajnego projektu. Jeśli nie podano żadnej ścieżki, ścieżka jest domyślnie określana jako nazwa wpisu tajnego wymienionego w elemecie secretRef. | ciąg |
secretRef | Nazwa wpisu tajnego aplikacji kontenera, z którego ma być pobierana wartość wpisu tajnego. | ciąg |
Szablony szybkiego startu
Następujące szablony szybkiego startu wdrażają ten typ zasobu.
Template | Opis |
---|---|
Tworzy aplikację kontenera i środowisko z rejestrem |
Utwórz środowisko aplikacji kontenera z podstawową aplikacją kontenera na podstawie Azure Container Registry. Wdraża również obszar roboczy usługi Log Analytics w celu przechowywania dzienników. |
Tworzy dwie aplikacje kontenera za pomocą środowiska aplikacji kontenera |
Utwórz dwa środowisko Aplikacji kontenera przy użyciu podstawowej aplikacji kontenera. Wdraża również obszar roboczy usługi Log Analytics w celu przechowywania dzienników. |
Tworzy aplikację kontenera w środowisku aplikacji kontenera |
Tworzenie środowiska aplikacji kontenera przy użyciu podstawowej aplikacji kontenera. Wdraża również obszar roboczy usługi Log Analytics w celu przechowywania dzienników. |
Tworzy aplikację kontenera z zdefiniowaną regułą skalowania HTTP |
Utwórz środowisko Container App Environment z podstawową aplikacją kontenera, która skaluje się na podstawie ruchu HTTP. |
Tworzy zewnętrzne środowisko aplikacji kontenera za pomocą sieci wirtualnej |
Tworzy zewnętrzne środowisko aplikacji kontenera z siecią wirtualną. |
Tworzy wewnętrzne środowisko aplikacji kontenera z siecią wirtualną |
Tworzy wewnętrzne środowisko aplikacji kontenera z siecią wirtualną. |
Definicja zasobu szablonu usługi ARM
Typ zasobu containerApps można wdrożyć za pomocą operacji docelowych:
- Grupy zasobów — zobacz polecenia wdrażania grupy zasobów
Aby uzyskać listę zmienionych właściwości w każdej wersji interfejsu API, zobacz dziennik zmian.
Format zasobu
Aby utworzyć zasób Microsoft.App/containerApps, dodaj następujący kod JSON do szablonu.
{
"type": "Microsoft.App/containerApps",
"apiVersion": "2023-05-01",
"name": "string",
"location": "string",
"tags": {
"tagName1": "tagValue1",
"tagName2": "tagValue2"
},
"extendedLocation": {
"name": "string",
"type": "CustomLocation"
},
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {}
}
},
"managedBy": "string",
"properties": {
"configuration": {
"activeRevisionsMode": "string",
"dapr": {
"appId": "string",
"appPort": "int",
"appProtocol": "string",
"enableApiLogging": "bool",
"enabled": "bool",
"httpMaxRequestSize": "int",
"httpReadBufferSize": "int",
"logLevel": "string"
},
"ingress": {
"allowInsecure": "bool",
"clientCertificateMode": "string",
"corsPolicy": {
"allowCredentials": "bool",
"allowedHeaders": [ "string" ],
"allowedMethods": [ "string" ],
"allowedOrigins": [ "string" ],
"exposeHeaders": [ "string" ],
"maxAge": "int"
},
"customDomains": [
{
"bindingType": "string",
"certificateId": "string",
"name": "string"
}
],
"exposedPort": "int",
"external": "bool",
"ipSecurityRestrictions": [
{
"action": "string",
"description": "string",
"ipAddressRange": "string",
"name": "string"
}
],
"stickySessions": {
"affinity": "string"
},
"targetPort": "int",
"traffic": [
{
"label": "string",
"latestRevision": "bool",
"revisionName": "string",
"weight": "int"
}
],
"transport": "string"
},
"maxInactiveRevisions": "int",
"registries": [
{
"identity": "string",
"passwordSecretRef": "string",
"server": "string",
"username": "string"
}
],
"secrets": [
{
"identity": "string",
"keyVaultUrl": "string",
"name": "string",
"value": "string"
}
],
"service": {
"type": "string"
}
},
"environmentId": "string",
"managedEnvironmentId": "string",
"template": {
"containers": [
{
"args": [ "string" ],
"command": [ "string" ],
"env": [
{
"name": "string",
"secretRef": "string",
"value": "string"
}
],
"image": "string",
"name": "string",
"probes": [
{
"failureThreshold": "int",
"httpGet": {
"host": "string",
"httpHeaders": [
{
"name": "string",
"value": "string"
}
],
"path": "string",
"port": "int",
"scheme": "string"
},
"initialDelaySeconds": "int",
"periodSeconds": "int",
"successThreshold": "int",
"tcpSocket": {
"host": "string",
"port": "int"
},
"terminationGracePeriodSeconds": "int",
"timeoutSeconds": "int",
"type": "string"
}
],
"resources": {
"cpu": "[json('decimal-as-string')]",
"memory": "string"
},
"volumeMounts": [
{
"mountPath": "string",
"subPath": "string",
"volumeName": "string"
}
]
}
],
"initContainers": [
{
"args": [ "string" ],
"command": [ "string" ],
"env": [
{
"name": "string",
"secretRef": "string",
"value": "string"
}
],
"image": "string",
"name": "string",
"resources": {
"cpu": "[json('decimal-as-string')]",
"memory": "string"
},
"volumeMounts": [
{
"mountPath": "string",
"subPath": "string",
"volumeName": "string"
}
]
}
],
"revisionSuffix": "string",
"scale": {
"maxReplicas": "int",
"minReplicas": "int",
"rules": [
{
"azureQueue": {
"auth": [
{
"secretRef": "string",
"triggerParameter": "string"
}
],
"queueLength": "int",
"queueName": "string"
},
"custom": {
"auth": [
{
"secretRef": "string",
"triggerParameter": "string"
}
],
"metadata": {
"{customized property}": "string"
},
"type": "string"
},
"http": {
"auth": [
{
"secretRef": "string",
"triggerParameter": "string"
}
],
"metadata": {
"{customized property}": "string"
}
},
"name": "string",
"tcp": {
"auth": [
{
"secretRef": "string",
"triggerParameter": "string"
}
],
"metadata": {
"{customized property}": "string"
}
}
}
]
},
"serviceBinds": [
{
"name": "string",
"serviceId": "string"
}
],
"terminationGracePeriodSeconds": "int",
"volumes": [
{
"mountOptions": "string",
"name": "string",
"secrets": [
{
"path": "string",
"secretRef": "string"
}
],
"storageName": "string",
"storageType": "string"
}
]
},
"workloadProfileName": "string"
}
}
Wartości właściwości
containerApps
Nazwa | Opis | Wartość |
---|---|---|
typ | Typ zasobu | "Microsoft.App/containerApps" |
apiVersion | Wersja interfejsu API zasobów | '2023-05-01' |
name | Nazwa zasobu | ciąg (wymagany) Limit znaków: 2–32 Prawidłowe znaki: Małe litery, cyfry i łączniki. Zacznij od litery i kończy się alfanumeryczną. |
location | Lokalizacja geograficzna, w której znajduje się zasób | ciąg (wymagany) |
tags | Tagi zasobów. | Słownik nazw tagów i wartości. Zobacz Tagi w szablonach |
extendedLocation | Typ złożony lokalizacji rozszerzonej. | ExtendedLocation |
identity | tożsamości zarządzane dla aplikacji kontenera do interakcji z innymi usługami platformy Azure bez obsługi żadnych wpisów tajnych ani poświadczeń w kodzie. | Identyfikator usługi zarządzanej |
managedBy | W pełni kwalifikowany identyfikator zasobu, który zarządza tym zasobem. Wskazuje, czy ten zasób jest zarządzany przez inny zasób platformy Azure. Jeśli tak jest, wdrożenie trybu pełnego nie spowoduje usunięcia zasobu, jeśli zostanie on usunięty z szablonu, ponieważ jest zarządzany przez inny zasób. | ciąg |
properties | Właściwości specyficzne dla zasobu ContainerApp | ContainerAppProperties |
ExtendedLocation
Nazwa | Opis | Wartość |
---|---|---|
name | Nazwa lokalizacji rozszerzonej. | ciąg |
typ | Typ lokalizacji rozszerzonej. | "CustomLocation" |
ManagedServiceIdentity
Nazwa | Opis | Wartość |
---|---|---|
typ | Typ tożsamości usługi zarządzanej (gdzie dozwolone są typy SystemAssigned i UserAssigned). | "Brak" "SystemAssigned" "SystemAssigned,UserAssigned" "UserAssigned" (wymagane) |
userAssignedIdentities | Zestaw tożsamości przypisanych przez użytkownika skojarzonych z zasobem. Klucze słownika userAssignedIdentities będą identyfikatorami zasobów usługi ARM w postaci: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Wartości słownika mogą być pustymi obiektami ({}) w żądaniach. | UserAssignedIdentities |
UserAssignedIdentities
Nazwa | Opis | Wartość |
---|---|---|
{niestandardowa właściwość} | UserAssignedIdentity |
UserAssignedIdentity
Ten obiekt nie zawiera żadnych właściwości do ustawienia podczas wdrażania. Wszystkie właściwości to ReadOnly.
ContainerAppProperties
Nazwa | Opis | Wartość |
---|---|---|
konfiguracja | Nieobsługiwane właściwości konfiguracji aplikacji kontenera. | Konfiguracja |
environmentId | Identyfikator zasobu środowiska. | ciąg |
managedEnvironmentId | Przestarzałe. Identyfikator zasobu środowiska aplikacji kontenera. | ciąg |
szablon | Definicja aplikacji kontenera w wersji. | Szablon |
workloadProfileName | Nazwa profilu obciążenia do przypięcia na potrzeby wykonywania aplikacji kontenera. | ciąg |
Konfigurowanie
Nazwa | Opis | Wartość |
---|---|---|
activeRevisionsMode | Tryb ActiveRevisionsMode określa sposób obsługi aktywnych poprawek dla aplikacji kontenera: {list} {item} Wiele: wiele poprawek może być aktywnych. {/item} {item} Pojedynczy: tylko jedna poprawka może być aktywna jednocześnie. Wagi poprawek nie mogą być używane w tym trybie. Jeśli nie podano żadnej wartości, jest to wartość domyślna. {/item} {/list} |
"Wiele" "Pojedynczy" |
dapr | Konfiguracja języka Dapr dla aplikacji kontenera. | Dapr |
ruch przychodzący | Konfiguracje ruchu przychodzącego. | Ruch przychodzący |
maxInactiveRevisions | Opcjonalny. Maksymalna liczba nieaktywnych poprawek, które może mieć aplikacja kontenera. | int |
Rejestrów | Kolekcja prywatnych poświadczeń rejestru kontenerów dla kontenerów używanych przez aplikację kontenerów | RegistryCredentials[] |
wpisy tajne | Zbieranie wpisów tajnych używanych przez aplikację kontenera | Wpis tajny[] |
usługa | Aplikacja kontenera, która ma być deweloperem App Service kontenera | Usługa |
Dapr
Nazwa | Opis | Wartość |
---|---|---|
appId | Identyfikator aplikacji języka Dapr | ciąg |
appPort | Informuje dapr, na którym porcie nasłuchuje aplikacja | int |
appProtocol | Informuje dapr, którego protokołu używa aplikacja. Prawidłowe opcje to http i grpc. Wartość domyślna to http | 'grpc' "http" |
enableApiLogging | Włącza rejestrowanie interfejsu API dla przyczepki Dapr | bool |
enabled | Wartość logiczna wskazująca, czy samochód boczny Dapr jest włączony | bool |
httpMaxRequestSize | Zwiększenie maksymalnego rozmiaru treści żądania http i grpc server parametru w MB do obsługi przekazywania dużych plików. Wartość domyślna to 4 MB. | int |
httpReadBufferSize | Maksymalny rozmiar buforu odczytu nagłówka HTTP w bazie wiedzy dapr do obsługi podczas wysyłania nagłówków z wieloma kb. Wartość domyślna to 65 KB. | int |
Loglevel | Ustawia poziom dziennika dla przyczepki Dapr. Dozwolone wartości to debugowanie, informacje, ostrzeganie, błąd. Wartość domyślna to informacje. | "debuguj" "błąd" "informacje" "ostrzegaj" |
Ruch przychodzący
Nazwa | Opis | Wartość |
---|---|---|
allowInsecure | Wartość logiczna wskazująca, czy połączenia HTTP z są dozwolone. W przypadku ustawienia wartości false połączeń HTTP są automatycznie przekierowywane do połączeń HTTPS | bool |
clientCertificateMode | Tryb certyfikatu klienta na potrzeby uwierzytelniania mTLS. Ignoruj wskazuje, że serwer odrzuca certyfikat klienta podczas przekazywania dalej. Pozycja Accept wskazuje, że serwer przekazuje certyfikat klienta, ale nie wymaga certyfikatu klienta. Pozycja Wymagaj wskazuje, że serwer wymaga certyfikatu klienta. | "Akceptuj" "Ignoruj" "wymagaj" |
corsPolicy | Zasady CORS dla aplikacji kontenera | CorsPolicy |
customDomains | niestandardowe powiązania domeny dla nazw hostów usługi Container Apps. | Domena niestandardowa[] |
exposedPort | Uwidoczniony port w kontenerach dla ruchu TCP z ruchu przychodzącego | int |
external | Wartość logiczna wskazująca, czy aplikacja uwidacznia zewnętrzny punkt końcowy HTTP | bool |
ipSecurityRestrictions | Reguły ograniczania przychodzącego adresu IP. | IpSecurityRestrictionRule[] |
stickySessions | Sesje sticky dla trybu pojedynczej poprawki | Ruch przychodzącyStickySessions |
targetPort | Docelowy port w kontenerach dla ruchu przychodzącego | int |
Ruchu | Wagi ruchu dla wersji aplikacji | TrafficWeight[] |
transport | Protokół transportu ruchu przychodzącego | "auto" "http" "http2" "tcp" |
CorsPolicy
Nazwa | Opis | Wartość |
---|---|---|
allowCredentials | Określa, czy zasób zezwala na poświadczenia | bool |
allowedHeaders | Określa zawartość nagłówka access-control-allow-headers | ciąg[] |
allowedMethods | Określa zawartość nagłówka access-control-allow-methods | ciąg[] |
allowedOrigins | Określa zawartość nagłówka access-control-allow-origins | string[] (wymagane) |
exposeHeaders | Określa zawartość nagłówka access-control-expose-headers | ciąg[] |
Maxage | Określa zawartość nagłówka access-control-max-age | int |
Domena niestandardowa
Nazwa | Opis | Wartość |
---|---|---|
bindingType | Custom Domain typ powiązania. | "Wyłączone" "SniEnabled" |
certificateId | Identyfikator zasobu certyfikatu, który ma być powiązany z tą nazwą hosta. Musi istnieć w środowisku zarządzanym. | ciąg |
name | Nazwa hosta. | ciąg (wymagany) |
IpSecurityRestrictionRule
Nazwa | Opis | Wartość |
---|---|---|
action | Zezwalaj na reguły zezwalania lub odmawiania określania dla przychodzącego adresu IP. Uwaga: Reguły mogą składać się tylko ze wszystkich dozwolonych lub WSZYSTKICH odmów | "Zezwalaj" "Odmów" (wymagane) |
description (opis) | Opisz regułę ograniczeń adresów IP, która jest wysyłana do aplikacji kontenera. Jest to pole opcjonalne. | ciąg |
ipAddressRange | Notacja CIDR zgodna z przychodzącym adresem IP | ciąg (wymagany) |
name | Nazwa reguły ograniczeń adresów IP. | ciąg (wymagany) |
Ruch przychodzącyStickySessions
Nazwa | Opis | Wartość |
---|---|---|
koligacja | Koligacja sesji sticky | "none" "sticky" |
Waga ruchu
Nazwa | Opis | Wartość |
---|---|---|
label | Kojarzy etykietę ruchu z poprawką | ciąg |
latestRevision | Wskazuje, że waga ruchu należy do najnowszej stabilnej poprawki | bool |
revisionName | Nazwa poprawki | ciąg |
waga | Waga ruchu przypisana do poprawki | int |
RegistryCredentials
Nazwa | Opis | Wartość |
---|---|---|
identity | Tożsamość zarządzana używana do uwierzytelniania za pomocą Azure Container Registry. W przypadku tożsamości przypisanych przez użytkownika użyj pełnego identyfikatora zasobu tożsamości przypisanej przez użytkownika. W przypadku tożsamości przypisanych przez system użyj polecenia "system" | ciąg |
passwordSecretRef | Nazwa wpisu tajnego zawierającego hasło logowania rejestru | ciąg |
serwer | Serwer usługi Container Registry | ciąg |
nazwa użytkownika | Nazwa użytkownika usługi Container Registry | ciąg |
Wpis tajny
Nazwa | Opis | Wartość |
---|---|---|
identity | Identyfikator zasobu tożsamości zarządzanej do uwierzytelniania za pomocą usługi Azure Key Vault lub system do używania tożsamości przypisanej przez system. | ciąg |
keyVaultUrl | Adres URL usługi Azure Key Vault wskazujący wpis tajny, do który odwołuje się aplikacja kontenera. | ciąg |
name | Nazwa wpisu tajnego. | ciąg |
wartość | Wartość wpisu tajnego. | ciąg Ograniczenia: Wartość wrażliwa. Przekaż jako bezpieczny parametr. |
Usługa
Nazwa | Opis | Wartość |
---|---|---|
typ | Typ usługi Dev ContainerApp | ciąg (wymagany) |
Template
Nazwa | Opis | Wartość |
---|---|---|
containers | Lista definicji kontenera dla aplikacji kontenera. | Kontener[] |
initContainers | Lista wyspecjalizowanych kontenerów uruchamianych przed kontenerami aplikacji. | InitContainer[] |
revisionSuffix | Sufiks przyjazny dla użytkownika, który jest dołączany do nazwy poprawki | ciąg |
scale | Skalowanie właściwości dla aplikacji kontenera. | Skalowanie |
serviceBinds | Lista usług aplikacji kontenera powiązanych z aplikacją | ServiceBind[] |
terminationGracePeriodSeconds | Opcjonalny czas trwania w sekundach, w których wystąpienie aplikacji kontenera musi zostać bezproblemowo zakończone. Wartość musi być nie ujemną liczbą całkowitą. Wartość zero wskazuje, że zatrzymaj się natychmiast za pośrednictwem sygnału zabijania (brak możliwości zamknięcia). Jeśli ta wartość jest zerowa, zostanie użyty domyślny okres prolongaty. Ustaw tę wartość dłużej niż oczekiwany czas oczyszczania procesu. Wartość domyślna to 30 sekund. | int |
volumes | Lista definicji woluminów dla aplikacji kontenera. | Wolumin[] |
Kontener
Nazwa | Opis | Wartość |
---|---|---|
args | Argumenty poleceń uruchamiania kontenera. | ciąg[] |
command | Polecenie uruchamiania kontenera. | ciąg[] |
Env | Zmienne środowiskowe kontenera. | EnvironmentVar[] |
image (obraz) | Tag obrazu kontenera. | ciąg |
name | Niestandardowa nazwa kontenera. | ciąg |
Sondy | Lista sond dla kontenera. | ContainerAppProbe[] |
zasoby | Wymagania dotyczące zasobów kontenera. | ContainerResources |
volumeMounts | Instalacja woluminu kontenera. | VolumeMount[] |
EnvironmentVar
Nazwa | Opis | Wartość |
---|---|---|
name | Nazwa zmiennej środowiskowej. | ciąg |
secretRef | Nazwa wpisu tajnego aplikacji kontenera, z którego ma być pobierana wartość zmiennej środowiskowej. | ciąg |
wartość | Wartość zmiennej środowiskowej bez wpisu tajnego. | ciąg |
ContainerAppProbe
Nazwa | Opis | Wartość |
---|---|---|
failureThreshold | Minimalna liczba kolejnych niepowodzeń dla sondy, które mają zostać uznane za zakończone niepowodzeniem po pomyślnym zakończeniu. Wartość domyślna to 3. Wartość minimalna to 1. Maksymalna wartość to 10. | int |
httpGet | HttpGet określa żądanie http do wykonania. | ContainerAppProbeHttpGet |
initialDelaySeconds | Liczba sekund po uruchomieniu kontenera przed zainicjowanymi sondami aktualności. Wartość minimalna to 1. Maksymalna wartość to 60. | int |
periodSeconds | Jak często (w sekundach) wykonać sondę. Wartość domyślna to 10 sekund. Wartość minimalna to 1. Maksymalna wartość to 240. | int |
successThreshold | Minimalna liczba kolejnych sukcesów dla sondy, która ma zostać uznana za pomyślną po nieudanej awarii. Wartość domyślna to 1. Musi być 1 dla utrzymania i uruchamiania. Wartość minimalna to 1. Maksymalna wartość to 10. | int |
tcpSocket | TcpSocket określa akcję obejmującą port TCP. Punkty zaczepienia TCP nie są jeszcze obsługiwane. | ContainerAppProbeTcpSocket |
terminationGracePeriodSeconds | Opcjonalny czas trwania w sekundach zasobnika musi zakończyć się bezproblemowo po awarii sondy. Okres prolongaty to czas trwania w sekundach po wysłaniu sygnału zakończenia procesów uruchomionych w zasobniku i czasie, w którym procesy są wymuszone zatrzymane za pomocą sygnału zabijania. Ustaw tę wartość dłużej niż oczekiwany czas oczyszczania procesu. Jeśli ta wartość jest zerowa, zostanie użyte zakończenie zasobnikaGracePeriodSeconds. W przeciwnym razie ta wartość zastępuje wartość podaną przez specyfikację zasobnika. Wartość musi być nie ujemną liczbą całkowitą. Wartość zero wskazuje, że zatrzymaj się natychmiast za pośrednictwem sygnału zabijania (brak możliwości zamknięcia). Jest to pole alfa i wymaga włączenia bramki funkcji ProbeTerminationGracePeriod. Wartość maksymalna to 3600 sekund (1 godzina) | int |
timeoutSeconds | Liczba sekund, po których upłynął limit czasu sondy. Wartość domyślna to 1 sekunda. Wartość minimalna to 1. Wartość maksymalna to 240. | int |
typ | Typ sondy. | "Liveness" "Gotowość" "Uruchamianie" |
ContainerAppProbeHttpGet
Nazwa | Opis | Wartość |
---|---|---|
host | Nazwa hosta, z którymi ma nawiązać połączenie, domyślnie jest to adres IP zasobnika. Prawdopodobnie zamiast tego chcesz ustawić wartość "Host" w elementach httpHeaders. | ciąg |
httpHeaders | Nagłówki niestandardowe do ustawienia w żądaniu. Protokół HTTP umożliwia powtarzające się nagłówki. | ContainerAppProbeHttpGetHttpHeadersItem[] |
path | Ścieżka dostępu do serwera HTTP. | ciąg |
port | Nazwa lub numer portu, aby uzyskać dostęp do kontenera. Liczba musi należeć do zakresu od 1 do 65535. Nazwa musi być IANA_SVC_NAME. | int (wymagane) |
schemat | Schemat używany do nawiązywania połączenia z hostem. Wartość domyślna to HTTP. | "HTTP" "HTTPS" |
ContainerAppProbeHttpGetHttpHeadersItem
Nazwa | Opis | Wartość |
---|---|---|
name | Nazwa pola nagłówka | ciąg (wymagany) |
wartość | Wartość pola nagłówka | ciąg (wymagany) |
ContainerAppProbeTcpSocket
Nazwa | Opis | Wartość |
---|---|---|
host | Opcjonalnie: Nazwa hosta, z którymi ma nawiązać połączenie, domyślnie jest to adres IP zasobnika. | ciąg |
port | Numer lub nazwa portu, aby uzyskać dostęp do kontenera. Liczba musi należeć do zakresu od 1 do 65535. Nazwa musi być IANA_SVC_NAME. | int (wymagane) |
ContainerResources
Nazwa | Opis | Wartość |
---|---|---|
Procesora | Wymagany procesor CPU w rdzeniach, np. 0,5 Aby określić wartość dziesiętną, użyj funkcji json(). | int lub json dziesiętne |
pamięć | Wymagana pamięć, np. "250 Mb" | ciąg |
VolumeMount
Nazwa | Opis | Wartość |
---|---|---|
mountPath | Ścieżka w kontenerze, w którym należy zamontować wolumin. Nie może zawierać ':'. | ciąg |
ścieżka podrzędna | Ścieżka w woluminie, z którego należy zamontować wolumin kontenera. Wartość domyślna to "" (katalog główny woluminu). | ciąg |
volumeName | Musi to być zgodne z nazwą woluminu. | ciąg |
InitContainer
Nazwa | Opis | Wartość |
---|---|---|
args | Argumenty polecenia uruchamiania kontenera. | ciąg[] |
command | Polecenie uruchamiania kontenera. | ciąg[] |
Env | Zmienne środowiskowe kontenera. | EnvironmentVar[] |
image (obraz) | Tag obrazu kontenera. | ciąg |
name | Niestandardowa nazwa kontenera. | ciąg |
zasoby | Wymagania dotyczące zasobów kontenera. | ContainerResources |
volumeMounts | Instalacja woluminu kontenera. | VolumeMount[] |
Skalowanie
Nazwa | Opis | Wartość |
---|---|---|
maxReplicas | Opcjonalny. Maksymalna liczba replik kontenerów. Wartość domyślna to 10, jeśli nie zostanie ustawiona. | int |
minReplicas | Opcjonalny. Minimalna liczba replik kontenerów. | int |
rules | Reguły skalowania. | ScaleRule[] |
ScaleRule
Nazwa | Opis | Wartość |
---|---|---|
azureQueue | Skalowanie oparte na kolejce platformy Azure. | QueueScaleRule |
niestandardowe | Niestandardowa reguła skalowania. | CustomScaleRule |
http | Skalowanie na podstawie żądań HTTP. | HttpScaleRule |
name | Nazwa reguły skalowania | ciąg |
Tcp | Skalowanie oparte na żądaniach TCP. | TcpScaleRule |
QueueScaleRule
Nazwa | Opis | Wartość |
---|---|---|
Auth | Wpisy tajne uwierzytelniania dla reguły skalowania kolejek. | ScaleRuleAuth[] |
queueLength | Długość kolejki. | int |
Queuename | Nazwa kolejki. | ciąg |
ScaleRuleAuth
Nazwa | Opis | Wartość |
---|---|---|
secretRef | Nazwa wpisu tajnego, z którego chcesz ściągnąć parametry uwierzytelniania. | ciąg |
triggerParameter | Parametr wyzwalacza, który używa wpisu tajnego | ciąg |
CustomScaleRule
Nazwa | Opis | Wartość |
---|---|---|
Auth | Wpisy tajne uwierzytelniania dla reguły skalowania niestandardowego. | ScaleRuleAuth[] |
metadane | Właściwości metadanych opisujące niestandardową regułę skalowania. | CustomScaleRuleMetadata |
typ | Typ reguły skalowania niestandardowego np. azure-servicebus, redis itp. |
ciąg |
CustomScaleRuleMetadata
Nazwa | Opis | Wartość |
---|---|---|
{niestandardowa właściwość} | ciąg |
HttpScaleRule
Nazwa | Opis | Wartość |
---|---|---|
Auth | Wpisy tajne uwierzytelniania dla reguły skalowania niestandardowego. | ScaleRuleAuth[] |
metadane | Właściwości metadanych opisujące regułę skalowania http. | HttpScaleRuleMetadata |
HttpScaleRuleMetadata
Nazwa | Opis | Wartość |
---|---|---|
{niestandardowa właściwość} | ciąg |
TcpScaleRule
Nazwa | Opis | Wartość |
---|---|---|
Auth | Wpisy tajne uwierzytelniania dla reguły skalowania tcp. | ScaleRuleAuth[] |
metadane | Właściwości metadanych opisujące regułę skalowania tcp. | TcpScaleRuleMetadata |
TcpScaleRuleMetadata
Nazwa | Opis | Wartość |
---|---|---|
{niestandardowa właściwość} | ciąg |
ServiceBind
Nazwa | Opis | Wartość |
---|---|---|
name | Nazwa powiązania usługi | ciąg |
serviceId | Identyfikator zasobu usługi docelowej | ciąg |
Wolumin
Nazwa | Opis | Wartość |
---|---|---|
mountOptions | Opcje instalacji używane podczas instalowania pliku AzureFile. Musi być ciągiem rozdzielanym przecinkami. | ciąg |
name | Nazwa woluminu. | ciąg |
wpisy tajne | Lista wpisów tajnych do dodania w woluminie. Jeśli nie podano żadnych wpisów tajnych, wszystkie wpisy tajne w kolekcji zostaną dodane do woluminu. | SecretVolumeItem[] |
storageName | Nazwa zasobu magazynu. Nie trzeba podawać wartości EmptyDir i Secret. | ciąg |
storageType | Typ magazynu woluminu. Jeśli nie podano, użyj wartości EmptyDir. | "AzureFile" "EmptyDir" "Wpis tajny" |
SecretVolumeItem
Nazwa | Opis | Wartość |
---|---|---|
path | Ścieżka do wpisu tajnego projektu. Jeśli nie podano żadnej ścieżki, ścieżka jest domyślnie określana jako nazwa wpisu tajnego wymienionego w elemecie secretRef. | ciąg |
secretRef | Nazwa wpisu tajnego aplikacji kontenera, z którego ma być pobierana wartość wpisu tajnego. | ciąg |
Szablony szybkiego startu
Następujące szablony szybkiego startu wdrażają ten typ zasobu.
Template | Opis |
---|---|
Tworzy aplikację kontenera i środowisko z rejestrem |
Utwórz środowisko aplikacji kontenera z podstawową aplikacją kontenera na podstawie Azure Container Registry. Wdraża również obszar roboczy usługi Log Analytics w celu przechowywania dzienników. |
Tworzy dwie aplikacje kontenera za pomocą środowiska aplikacji kontenera |
Utwórz dwa środowisko Aplikacji kontenera przy użyciu podstawowej aplikacji kontenera. Wdraża również obszar roboczy usługi Log Analytics w celu przechowywania dzienników. |
Tworzy aplikację kontenera w środowisku aplikacji kontenera |
Tworzenie środowiska aplikacji kontenera przy użyciu podstawowej aplikacji kontenera. Wdraża również obszar roboczy usługi Log Analytics w celu przechowywania dzienników. |
Tworzy aplikację kontenera z zdefiniowaną regułą skalowania HTTP |
Utwórz środowisko Container App Environment z podstawową aplikacją kontenera, która skaluje się na podstawie ruchu HTTP. |
Tworzy zewnętrzne środowisko aplikacji kontenera za pomocą sieci wirtualnej |
Tworzy zewnętrzne środowisko aplikacji kontenera z siecią wirtualną. |
Tworzy wewnętrzne środowisko aplikacji kontenera z siecią wirtualną |
Tworzy wewnętrzne środowisko aplikacji kontenera z siecią wirtualną. |
Definicja zasobu narzędzia Terraform (dostawcy AzAPI)
Typ zasobu containerApps można wdrożyć za pomocą operacji docelowych:
- Grupy zasobów
Aby uzyskać listę zmienionych właściwości w każdej wersji interfejsu API, zobacz dziennik zmian.
Format zasobu
Aby utworzyć zasób Microsoft.App/containerApps, dodaj następujący program Terraform do szablonu.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.App/containerApps@2023-05-01"
name = "string"
location = "string"
parent_id = "string"
tags = {
tagName1 = "tagValue1"
tagName2 = "tagValue2"
}
identity {
type = "string"
identity_ids = []
}
body = jsonencode({
properties = {
configuration = {
activeRevisionsMode = "string"
dapr = {
appId = "string"
appPort = int
appProtocol = "string"
enableApiLogging = bool
enabled = bool
httpMaxRequestSize = int
httpReadBufferSize = int
logLevel = "string"
}
ingress = {
allowInsecure = bool
clientCertificateMode = "string"
corsPolicy = {
allowCredentials = bool
allowedHeaders = [
"string"
]
allowedMethods = [
"string"
]
allowedOrigins = [
"string"
]
exposeHeaders = [
"string"
]
maxAge = int
}
customDomains = [
{
bindingType = "string"
certificateId = "string"
name = "string"
}
]
exposedPort = int
external = bool
ipSecurityRestrictions = [
{
action = "string"
description = "string"
ipAddressRange = "string"
name = "string"
}
]
stickySessions = {
affinity = "string"
}
targetPort = int
traffic = [
{
label = "string"
latestRevision = bool
revisionName = "string"
weight = int
}
]
transport = "string"
}
maxInactiveRevisions = int
registries = [
{
identity = "string"
passwordSecretRef = "string"
server = "string"
username = "string"
}
]
secrets = [
{
identity = "string"
keyVaultUrl = "string"
name = "string"
value = "string"
}
]
service = {
type = "string"
}
}
environmentId = "string"
managedEnvironmentId = "string"
template = {
containers = [
{
args = [
"string"
]
command = [
"string"
]
env = [
{
name = "string"
secretRef = "string"
value = "string"
}
]
image = "string"
name = "string"
probes = [
{
failureThreshold = int
httpGet = {
host = "string"
httpHeaders = [
{
name = "string"
value = "string"
}
]
path = "string"
port = int
scheme = "string"
}
initialDelaySeconds = int
periodSeconds = int
successThreshold = int
tcpSocket = {
host = "string"
port = int
}
terminationGracePeriodSeconds = int
timeoutSeconds = int
type = "string"
}
]
resources = {
cpu = "decimal-as-string"
memory = "string"
}
volumeMounts = [
{
mountPath = "string"
subPath = "string"
volumeName = "string"
}
]
}
]
initContainers = [
{
args = [
"string"
]
command = [
"string"
]
env = [
{
name = "string"
secretRef = "string"
value = "string"
}
]
image = "string"
name = "string"
resources = {
cpu = "decimal-as-string"
memory = "string"
}
volumeMounts = [
{
mountPath = "string"
subPath = "string"
volumeName = "string"
}
]
}
]
revisionSuffix = "string"
scale = {
maxReplicas = int
minReplicas = int
rules = [
{
azureQueue = {
auth = [
{
secretRef = "string"
triggerParameter = "string"
}
]
queueLength = int
queueName = "string"
}
custom = {
auth = [
{
secretRef = "string"
triggerParameter = "string"
}
]
metadata = {
{customized property} = "string"
}
type = "string"
}
http = {
auth = [
{
secretRef = "string"
triggerParameter = "string"
}
]
metadata = {
{customized property} = "string"
}
}
name = "string"
tcp = {
auth = [
{
secretRef = "string"
triggerParameter = "string"
}
]
metadata = {
{customized property} = "string"
}
}
}
]
}
serviceBinds = [
{
name = "string"
serviceId = "string"
}
]
terminationGracePeriodSeconds = int
volumes = [
{
mountOptions = "string"
name = "string"
secrets = [
{
path = "string"
secretRef = "string"
}
]
storageName = "string"
storageType = "string"
}
]
}
workloadProfileName = "string"
}
extendedLocation = {
name = "string"
type = "CustomLocation"
}
managedBy = "string"
})
}
Wartości właściwości
containerApps
Nazwa | Opis | Wartość |
---|---|---|
typ | Typ zasobu | "Microsoft.App/containerApps@2023-05-01" |
name | Nazwa zasobu | ciąg (wymagany) Limit znaków: 2–32 Prawidłowe znaki: Małe litery, cyfry i łączniki. Zacznij od litery i na końcu alfanumeryczne. |
location | Lokalizacja geograficzna, w której znajduje się zasób | ciąg (wymagany) |
parent_id | Aby przeprowadzić wdrożenie w grupie zasobów, użyj identyfikatora tej grupy zasobów. | ciąg (wymagany) |
tags | Tagi zasobów. | Słownik nazw tagów i wartości. |
extendedLocation | Typ złożony lokalizacji rozszerzonej. | ExtendedLocation |
identity | tożsamości zarządzane dla aplikacji kontenera umożliwiające interakcję z innymi usługami platformy Azure bez konieczności obsługi wpisów tajnych ani poświadczeń w kodzie. | ManagedServiceIdentity |
managedBy | W pełni kwalifikowany identyfikator zasobu, który zarządza tym zasobem. Wskazuje, czy ten zasób jest zarządzany przez inny zasób platformy Azure. Jeśli jest to obecne, wdrożenie w trybie pełnym nie usunie zasobu, jeśli zostanie on usunięty z szablonu, ponieważ jest on zarządzany przez inny zasób. | ciąg |
properties | Właściwości specyficzne dla zasobu ContainerApp | ContainerAppProperties |
ExtendedLocation
Nazwa | Opis | Wartość |
---|---|---|
name | Nazwa lokalizacji rozszerzonej. | ciąg |
typ | Typ lokalizacji rozszerzonej. | "CustomLocation" |
ManagedServiceIdentity
Nazwa | Opis | Wartość |
---|---|---|
typ | Typ tożsamości usługi zarządzanej (gdzie dozwolone są typy SystemAssigned i UserAssigned). | "SystemAssigned" "SystemAssigned,UserAssigned" "UserAssigned" (wymagane) |
identity_ids | Zestaw tożsamości przypisanych przez użytkownika skojarzonych z zasobem. Klucze słownika userAssignedIdentities będą identyfikatorami zasobów usługi ARM w postaci: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Wartości słownika mogą być pustymi obiektami ({}) w żądaniach. | Tablica identyfikatorów tożsamości użytkowników. |
UserAssignedIdentities
Nazwa | Opis | Wartość |
---|---|---|
{niestandardowa właściwość} | UserAssignedIdentity |
UserAssignedIdentity
Ten obiekt nie zawiera żadnych właściwości do ustawienia podczas wdrażania. Wszystkie właściwości to ReadOnly.
ContainerAppProperties
Nazwa | Opis | Wartość |
---|---|---|
konfiguracja | Nieobsługiwane właściwości konfiguracji aplikacji kontenera. | Konfiguracja |
environmentId | Identyfikator zasobu środowiska. | ciąg |
managedEnvironmentId | Przestarzałe. Identyfikator zasobu środowiska aplikacji kontenera. | ciąg |
szablon | Definicja aplikacji kontenera w wersji. | Szablon |
workloadProfileName | Nazwa profilu obciążenia do przypięcia na potrzeby wykonywania aplikacji kontenera. | ciąg |
Konfigurowanie
Nazwa | Opis | Wartość |
---|---|---|
activeRevisionsMode | Tryb ActiveRevisionsMode określa sposób obsługi aktywnych poprawek dla aplikacji kontenera: {list} {item} Wiele: wiele poprawek może być aktywnych. {/item} {item} Pojedynczy: tylko jedna poprawka może być aktywna jednocześnie. Wagi poprawek nie mogą być używane w tym trybie. Jeśli nie podano żadnej wartości, jest to wartość domyślna. {/item} {/list} |
"Wiele" "Pojedynczy" |
dapr | Konfiguracja języka Dapr dla aplikacji kontenera. | Dapr |
ruch przychodzący | Konfiguracje ruchu przychodzącego. | Ruch przychodzący |
maxInactiveRevisions | Opcjonalny. Maksymalna liczba nieaktywnych poprawek, które może mieć aplikacja kontenera. | int |
Rejestrów | Zbieranie poświadczeń prywatnego rejestru kontenerów dla kontenerów używanych przez aplikację kontenera | RegistryCredentials[] |
wpisy tajne | Zbieranie wpisów tajnych używanych przez aplikację kontenera | Wpis tajny[] |
usługa | Kontener app to be a dev Container App Service | Usługa |
Dapr
Nazwa | Opis | Wartość |
---|---|---|
appId | Identyfikator aplikacji dapr | ciąg |
appPort | Informuje dapr, na którym porcie aplikacja nasłuchuje | int |
appProtocol | Informuje dapr, którego protokołu używa aplikacja. Prawidłowe opcje to http i grpc. Wartość domyślna to http | "grpc" "http" |
enableApiLogging | Włącza rejestrowanie interfejsu API dla przyczepki dapr | bool |
enabled | Wartość logiczna wskazująca, czy samochód po stronie Dapr jest włączony | bool |
httpMaxRequestSize | Zwiększenie maksymalnego rozmiaru parametru http i grpc serwerów żądań w MB w celu obsługi przekazywania dużych plików. Wartość domyślna to 4 MB. | int |
httpReadBufferSize | Maksymalny rozmiar buforu odczytu nagłówka http w kb do obsługi podczas wysyłania nagłówków z wieloma kb. Wartość domyślna to 65 KB. | int |
Loglevel | Ustawia poziom dziennika dla przyczepki Dapr. Dozwolone wartości to debugowanie, informacje, ostrzeganie, błąd. Wartość domyślna to informacje. | "debugowanie" "błąd" "informacje" "ostrzegaj" |
Ruch przychodzący
Nazwa | Opis | Wartość |
---|---|---|
allowInsecure | Wartość logiczna wskazująca, czy połączenia HTTP z jest dozwolone. Jeśli ustawiono wartość false połączeń HTTP, są automatycznie przekierowywane do połączeń HTTPS | bool |
clientCertificateMode | Tryb certyfikatu klienta na potrzeby uwierzytelniania mTLS. Ignoruj wskazuje, że serwer odrzuca certyfikat klienta podczas przekazywania dalej. Accept wskazuje, że serwer przekazuje certyfikat klienta, ale nie wymaga certyfikatu klienta. Wymagaj wskazuje, że serwer wymaga certyfikatu klienta. | "Akceptuj" "Ignoruj" "wymagaj" |
corsPolicy | Zasady MECHANIZMU CORS dla aplikacji kontenera | CorsPolicy |
customDomains | niestandardowe powiązania domeny dla nazw hostów usługi Container Apps. | Domena niestandardowa[] |
exposedPort | Uwidoczniony port w kontenerach dla ruchu TCP z ruchu przychodzącego | int |
external | Wartość logiczna wskazująca, czy aplikacja uwidacznia zewnętrzny punkt końcowy http | bool |
ipSecurityRestrictions | Reguły ograniczania przychodzącego adresu IP. | IpSecurityRestrictionRule[] |
stickySessions | Sesje sticky dla trybu pojedynczej poprawki | Ruch przychodzącyStickySessions |
targetPort | Docelowy port w kontenerach dla ruchu przychodzącego | int |
Ruchu | Wagi ruchu dla poprawek aplikacji | TrafficWeight[] |
transport | Protokół transportu przychodzącego | "Auto" "http" "http2" "tcp" |
CorsPolicy
Nazwa | Opis | Wartość |
---|---|---|
allowCredentials | Określa, czy zasób zezwala na poświadczenia | bool |
allowedHeaders | Określa zawartość nagłówka access-control-allow-headers | ciąg[] |
allowedMethods | Określa zawartość nagłówka access-control-allow-methods | ciąg[] |
allowedOrigins | Określa zawartość nagłówka access-control-allow-origins | string[] (wymagane) |
exposeHeaders | Określa zawartość nagłówka access-control-expose-headers | ciąg[] |
Maxage | Określa zawartość nagłówka access-control-max-age | int |
Domena niestandardowa
Nazwa | Opis | Wartość |
---|---|---|
bindingType | Custom Domain typ powiązania. | "Wyłączone" "SniEnabled" |
certificateId | Identyfikator zasobu certyfikatu, który ma być powiązany z tą nazwą hosta. Musi istnieć w środowisku zarządzanym. | ciąg |
name | Nazwa hosta. | ciąg (wymagany) |
IpSecurityRestrictionRule
Nazwa | Opis | Wartość |
---|---|---|
action | Zezwalaj na reguły zezwalania lub odmowy w celu określenia dla przychodzącego adresu IP. Uwaga: Reguły mogą składać się tylko ze wszystkich dozwolonych lub WSZYSTKICH odmów | "Zezwalaj" "Odmów" (wymagane) |
description (opis) | Opisz regułę ograniczeń adresów IP, która jest wysyłana do kontenera-app. Jest to pole opcjonalne. | ciąg |
ipAddressRange | Notacja CIDR zgodna z przychodzącym adresem IP | ciąg (wymagany) |
name | Nazwa reguły ograniczeń adresów IP. | ciąg (wymagany) |
Ruch przychodzącyStickySessions
Nazwa | Opis | Wartość |
---|---|---|
koligacja | Koligacja sesji sticky | "brak" "sticky" |
Waga ruchu
Nazwa | Opis | Wartość |
---|---|---|
label | Kojarzy etykietę ruchu z poprawką | ciąg |
latestRevision | Wskazuje, że waga ruchu należy do najnowszej stabilnej wersji | bool |
revisionName | Nazwa poprawki | ciąg |
waga | Waga ruchu przypisana do poprawki | int |
RegistryCredentials
Nazwa | Opis | Wartość |
---|---|---|
identity | Tożsamość zarządzana używana do uwierzytelniania za pomocą Azure Container Registry. W przypadku tożsamości przypisanych przez użytkownika użyj pełnego identyfikatora zasobu tożsamości przypisanej przez użytkownika. W przypadku tożsamości przypisanych przez system użyj polecenia "system" | ciąg |
passwordSecretRef | Nazwa wpisu tajnego zawierającego hasło logowania rejestru | ciąg |
serwer | Serwer usługi Container Registry | ciąg |
nazwa użytkownika | Nazwa użytkownika usługi Container Registry | ciąg |
Wpis tajny
Nazwa | Opis | Wartość |
---|---|---|
identity | Identyfikator zasobu tożsamości zarządzanej do uwierzytelniania za pomocą usługi Azure Key Vault lub system do używania tożsamości przypisanej przez system. | ciąg |
keyVaultUrl | Adres URL usługi Azure Key Vault wskazujący wpis tajny, do który odwołuje się aplikacja kontenera. | ciąg |
name | Nazwa wpisu tajnego. | ciąg |
wartość | Wartość wpisu tajnego. | ciąg Ograniczenia: Wartość wrażliwa. Przekaż jako bezpieczny parametr. |
Usługa
Nazwa | Opis | Wartość |
---|---|---|
typ | Typ usługi Dev ContainerApp | ciąg (wymagany) |
Template
Nazwa | Opis | Wartość |
---|---|---|
containers | Lista definicji kontenera dla aplikacji kontenera. | Kontener[] |
initContainers | Lista wyspecjalizowanych kontenerów uruchamianych przed kontenerami aplikacji. | InitContainer[] |
revisionSuffix | Sufiks przyjazny dla użytkownika, który jest dołączany do nazwy poprawki | ciąg |
scale | Skalowanie właściwości dla aplikacji kontenera. | Skalowanie |
serviceBinds | Lista usług aplikacji kontenera powiązanych z aplikacją | ServiceBind[] |
terminationGracePeriodSeconds | Opcjonalny czas trwania w sekundach, w których wystąpienie aplikacji kontenera musi zostać bezproblemowo zakończone. Wartość musi być nie ujemną liczbą całkowitą. Wartość zero wskazuje, że zatrzymaj się natychmiast za pośrednictwem sygnału zabijania (brak możliwości zamknięcia). Jeśli ta wartość jest zerowa, zostanie użyty domyślny okres prolongaty. Ustaw tę wartość dłużej niż oczekiwany czas oczyszczania procesu. Wartość domyślna to 30 sekund. | int |
volumes | Lista definicji woluminów dla aplikacji kontenera. | Wolumin[] |
Kontener
Nazwa | Opis | Wartość |
---|---|---|
args | Argumenty poleceń uruchamiania kontenera. | ciąg[] |
command | Polecenie uruchamiania kontenera. | ciąg[] |
Env | Zmienne środowiskowe kontenera. | EnvironmentVar[] |
image (obraz) | Tag obrazu kontenera. | ciąg |
name | Niestandardowa nazwa kontenera. | ciąg |
Sondy | Lista sond dla kontenera. | ContainerAppProbe[] |
zasoby | Wymagania dotyczące zasobów kontenera. | ContainerResources |
volumeMounts | Instalacja woluminu kontenera. | VolumeMount[] |
EnvironmentVar
Nazwa | Opis | Wartość |
---|---|---|
name | Nazwa zmiennej środowiskowej. | ciąg |
secretRef | Nazwa wpisu tajnego aplikacji kontenera, z którego ma być pobierana wartość zmiennej środowiskowej. | ciąg |
wartość | Wartość zmiennej środowiskowej bez wpisu tajnego. | ciąg |
ContainerAppProbe
Nazwa | Opis | Wartość |
---|---|---|
failureThreshold | Minimalna liczba kolejnych niepowodzeń dla sondy, które mają zostać uznane za zakończone niepowodzeniem po pomyślnym zakończeniu. Wartość domyślna to 3. Wartość minimalna to 1. Wartość maksymalna to 10. | int |
httpGet | Element HTTPGet określa żądanie HTTP do wykonania. | ContainerAppProbeHttpGet |
initialDelaySeconds | Liczba sekund po uruchomieniu kontenera przed zainicjowaniem sond żywotności. Wartość minimalna to 1. Wartość maksymalna to 60. | int |
periodSeconds | Jak często (w sekundach) wykonać sondę. Wartość domyślna to 10 sekund. Wartość minimalna to 1. Wartość maksymalna to 240. | int |
successThreshold | Minimalna liczba kolejnych sukcesów dla sondy, która ma zostać uznana za pomyślną po niepodaniu. Wartość domyślna to 1. Musi być 1 dla życia i uruchamiania. Wartość minimalna to 1. Wartość maksymalna to 10. | int |
tcpSocket | TcpSocket określa akcję obejmującą port TCP. Punkty zaczepienia TCP nie są jeszcze obsługiwane. | ContainerAppProbeTcpSocket |
terminationGracePeriodSeconds | Opcjonalny czas trwania w sekundach zasobnik musi zostać bezpiecznie zakończony po awarii sondy. Okres prolongaty to czas trwania w sekundach po wysłaniu sygnału zakończenia procesów uruchomionych w zasobniku oraz czasu wymuszonego zatrzymania procesów za pomocą sygnału zabicia. Ustaw tę wartość dłużej niż oczekiwany czas oczyszczania dla procesu. Jeśli ta wartość jest zerowa, zostanie użyte zakończenie zasobnikaGracePeriodSeconds. W przeciwnym razie ta wartość zastępuje wartość podaną przez specyfikację zasobnika. Wartość musi być nieujemną liczbą całkowitą. Wartość zero wskazuje zatrzymać się natychmiast za pośrednictwem sygnału zabicia (brak możliwości zamknięcia). Jest to pole alfa i wymaga włączenia bramki funkcji ProbeTerminationGracePeriod. Wartość maksymalna to 3600 sekund (1 godzina) | int |
timeoutSeconds | Liczba sekund, po których upłynął limit czasu sondy. Wartość domyślna to 1 sekunda. Wartość minimalna to 1. Wartość maksymalna to 240. | int |
typ | Typ sondy. | "Liveness" "Gotowość" "Uruchamianie" |
ContainerAppProbeHttpGet
Nazwa | Opis | Wartość |
---|---|---|
host | Nazwa hosta, z którymi ma nawiązać połączenie, domyślnie jest to adres IP zasobnika. Prawdopodobnie zamiast tego chcesz ustawić wartość "Host" w elementach httpHeaders. | ciąg |
httpHeaders | Nagłówki niestandardowe do ustawienia w żądaniu. Protokół HTTP umożliwia powtarzające się nagłówki. | ContainerAppProbeHttpGetHttpHeadersItem[] |
path | Ścieżka dostępu do serwera HTTP. | ciąg |
port | Nazwa lub numer portu, aby uzyskać dostęp do kontenera. Liczba musi należeć do zakresu od 1 do 65535. Nazwa musi być IANA_SVC_NAME. | int (wymagane) |
schemat | Schemat używany do nawiązywania połączenia z hostem. Wartość domyślna to HTTP. | "HTTP" "HTTPS" |
ContainerAppProbeHttpGetHttpHeadersItem
Nazwa | Opis | Wartość |
---|---|---|
name | Nazwa pola nagłówka | ciąg (wymagany) |
wartość | Wartość pola nagłówka | ciąg (wymagany) |
ContainerAppProbeTcpSocket
Nazwa | Opis | Wartość |
---|---|---|
host | Opcjonalnie: Nazwa hosta, z którymi ma nawiązać połączenie, domyślnie jest to adres IP zasobnika. | ciąg |
port | Numer lub nazwa portu, aby uzyskać dostęp do kontenera. Liczba musi należeć do zakresu od 1 do 65535. Nazwa musi być IANA_SVC_NAME. | int (wymagane) |
ContainerResources
Nazwa | Opis | Wartość |
---|---|---|
Procesora | Wymagany procesor CPU w rdzeniach, np. 0,5, określ wartość dziesiętną jako ciąg. | int lub json dziesiętny |
pamięć | Wymagana pamięć, np. "250 Mb" | ciąg |
VolumeMount
Nazwa | Opis | Wartość |
---|---|---|
mountPath | Ścieżka w kontenerze, w którym należy zamontować wolumin. Nie może zawierać elementu ":". | ciąg |
subPath | Ścieżka w woluminie, z którego należy zamontować wolumin kontenera. Wartość domyślna to "" (katalog główny woluminu). | ciąg |
volumeName | Musi to być zgodne z nazwą woluminu. | ciąg |
InitContainer
Nazwa | Opis | Wartość |
---|---|---|
args | Argumenty poleceń uruchamiania kontenera. | ciąg[] |
command | Polecenie uruchamiania kontenera. | ciąg[] |
Env | Zmienne środowiskowe kontenera. | EnvironmentVar[] |
image (obraz) | Tag obrazu kontenera. | ciąg |
name | Niestandardowa nazwa kontenera. | ciąg |
zasoby | Wymagania dotyczące zasobów kontenera. | ContainerResources |
volumeMounts | Instalacja woluminu kontenera. | VolumeMount[] |
Skalowanie
Nazwa | Opis | Wartość |
---|---|---|
maxReplicas | Opcjonalny. Maksymalna liczba replik kontenerów. Wartość domyślna to 10, jeśli nie zostanie ustawiona. | int |
minReplicas | Opcjonalny. Minimalna liczba replik kontenerów. | int |
rules | Reguły skalowania. | ScaleRule[] |
ScaleRule
Nazwa | Opis | Wartość |
---|---|---|
azureQueue | Skalowanie oparte na kolejce platformy Azure. | QueueScaleRule |
niestandardowe | Niestandardowa reguła skalowania. | CustomScaleRule |
http | Skalowanie na podstawie żądań HTTP. | HttpScaleRule |
name | Nazwa reguły skalowania | ciąg |
Tcp | Skalowanie oparte na żądaniach TCP. | TcpScaleRule |
QueueScaleRule
Nazwa | Opis | Wartość |
---|---|---|
Auth | Wpisy tajne uwierzytelniania dla reguły skalowania kolejek. | ScaleRuleAuth[] |
queueLength | Długość kolejki. | int |
Queuename | Nazwa kolejki. | ciąg |
ScaleRuleAuth
Nazwa | Opis | Wartość |
---|---|---|
secretRef | Nazwa wpisu tajnego, z którego chcesz ściągnąć parametry uwierzytelniania. | ciąg |
triggerParameter | Parametr wyzwalacza, który używa wpisu tajnego | ciąg |
CustomScaleRule
Nazwa | Opis | Wartość |
---|---|---|
Auth | Wpisy tajne uwierzytelniania dla reguły skalowania niestandardowego. | ScaleRuleAuth[] |
metadane | Właściwości metadanych opisujące niestandardową regułę skalowania. | CustomScaleRuleMetadata |
typ | Typ reguły skalowania niestandardowego np. azure-servicebus, redis itp. |
ciąg |
CustomScaleRuleMetadata
Nazwa | Opis | Wartość |
---|---|---|
{niestandardowa właściwość} | ciąg |
HttpScaleRule
Nazwa | Opis | Wartość |
---|---|---|
Auth | Wpisy tajne uwierzytelniania dla reguły skalowania niestandardowego. | ScaleRuleAuth[] |
metadane | Właściwości metadanych opisujące regułę skalowania http. | HttpScaleRuleMetadata |
HttpScaleRuleMetadata
Nazwa | Opis | Wartość |
---|---|---|
{niestandardowa właściwość} | ciąg |
TcpScaleRule
Nazwa | Opis | Wartość |
---|---|---|
Auth | Wpisy tajne uwierzytelniania dla reguły skalowania tcp. | ScaleRuleAuth[] |
metadane | Właściwości metadanych opisujące regułę skalowania tcp. | TcpScaleRuleMetadata |
TcpScaleRuleMetadata
Nazwa | Opis | Wartość |
---|---|---|
{niestandardowa właściwość} | ciąg |
ServiceBind
Nazwa | Opis | Wartość |
---|---|---|
name | Nazwa powiązania usługi | ciąg |
serviceId | Identyfikator zasobu usługi docelowej | ciąg |
Wolumin
Nazwa | Opis | Wartość |
---|---|---|
mountOptions | Opcje instalacji używane podczas instalowania pliku AzureFile. Musi być ciągiem rozdzielanym przecinkami. | ciąg |
name | Nazwa woluminu. | ciąg |
wpisy tajne | Lista wpisów tajnych do dodania w woluminie. Jeśli nie podano żadnych wpisów tajnych, wszystkie wpisy tajne w kolekcji zostaną dodane do woluminu. | SecretVolumeItem[] |
storageName | Nazwa zasobu magazynu. Nie trzeba podawać wartości EmptyDir i Secret. | ciąg |
storageType | Typ magazynu dla woluminu. Jeśli nie zostanie podana, użyj wartości EmptyDir. | "AzureFile" "EmptyDir" "Wpis tajny" |
SecretVolumeItem
Nazwa | Opis | Wartość |
---|---|---|
path | Ścieżka do wpisu tajnego projektu. Jeśli nie podano ścieżki, ścieżka domyślnie określa nazwę wpisu tajnego wymienionego w secretRef. | ciąg |
secretRef | Nazwa wpisu tajnego aplikacji kontenera, z którego ma być pobierana wartość wpisu tajnego. | ciąg |
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla