Inkomend verkeer configureren voor uw app in Azure Container Apps
In dit artikel leest u hoe u toegangsbeheerfuncties voor uw container-app inschakelt. Inkomend verkeer is een toepassingsbrede instelling. Wijzigingen in instellingen voor inkomend verkeer zijn van toepassing op alle revisies tegelijk en genereren geen nieuwe revisies.
Instellingen voor inkomend verkeer
U kunt de volgende eigenschappen van de sjabloon voor inkomend verkeer instellen:
Eigenschappen | Beschrijving | Waarden | Vereist |
---|---|---|---|
allowInsecure |
Hiermee staat u onveilig verkeer naar uw container-app toe. Wanneer deze instelling is ingesteld op true HTTP-aanvragen naar poort 80, wordt niet automatisch omgeleid naar poort 443 via HTTPS, waardoor onveilige verbindingen worden toegestaan. |
false (standaard), true schakelt onveilige verbindingen in |
Nee |
clientCertificateMode |
Clientcertificaatmodus voor mTLS-verificatie. Negeren geeft aan dat de server het clientcertificaat bij doorsturen laat vallen. Accepteren geeft aan dat server clientcertificaat doorstuurt, maar geen clientcertificaat vereist. Vereisen geeft aan dat voor de server een clientcertificaat is vereist. | Required , , Accept Ignore (standaard) |
Nee |
customDomains |
Aangepaste domeinbindingen voor hostnamen van Container Apps. Aangepaste domeinen en certificaten bekijken | Een matrix met bindingen | Nee |
exposedPort |
(Alleen TCP-inkomend verkeer) De poort TCP luistert. Als external dat het is true , moet de waarde uniek zijn in de Container Apps-omgeving. |
Een poortnummer van 1 naar 65535 . (kan niet of 80 443 ) |
Nee |
external |
Inkomend verkeer naar uw app toestaan van buiten de Container Apps-omgeving. | true of false (standaard) |
Ja |
ipSecurityRestrictions |
Beperkingen voor inkomend IP-verkeer. Zie Beperkingen voor inkomend IP-verkeer instellen | Een matrix met regels | Nee |
stickySessions.affinity |
Hiermee schakelt u sessieaffiniteit in. | none (standaard), sticky |
Nee |
targetPort |
De poort waar uw container naar luistert voor binnenkomende aanvragen. | Stel deze waarde in op het poortnummer dat door uw container wordt gebruikt. Voor inkomend HTTP-verkeer wordt uw eindpunt voor inkomend verkeer van uw toepassing altijd weergegeven op poort 443 . |
Ja |
traffic |
Verkeer dat gewichten splitst tussen revisies. | Een matrix met regels | Nee |
transport |
Het type transportprotocol. | automatisch (standaard) detecteert HTTP/1 of HTTP/2, http voor HTTP/1, http2 voor HTTP/2, tcp voor TCP. |
Nee |
Inkomend verkeer inschakelen
U kunt inkomend verkeer voor uw container-app configureren met behulp van de Azure CLI, een ARM-sjabloon of Azure Portal.
Met deze az containerapp ingress enable
opdracht schakelt u inkomend verkeer in voor uw container-app. U moet de doelpoort opgeven en u kunt desgewenst de weergegeven poort instellen als uw transporttype is tcp
.
az containerapp ingress enable \
--name <app-name> \
--resource-group <resource-group> \
--target-port <target-port> \
--exposed-port <tcp-exposed-port> \
--transport <transport> \
--type <external>
--allow-insecure
az containerapp ingress enable
argumenten voor inkomend verkeer:
Optie | Eigenschappen | Beschrijving | Waarden | Vereist |
---|---|---|---|---|
--type |
external | Toegang tot uw app vanaf elke locatie toestaan of inkomend verkeer beperken tot de interne Container Apps-omgeving. | external of internal |
Ja |
--allow-insecure |
allowInsecure | HTTP-verbindingen met uw app toestaan. | Nee | |
--target-port |
targetPort | De poort waar uw container naar luistert voor binnenkomende aanvragen. | Stel deze waarde in op het poortnummer dat door uw container wordt gebruikt. Uw eindpunt voor inkomend verkeer van uw toepassing wordt altijd weergegeven op poort 443 . |
Ja |
--exposed-port |
exposedPort | (Alleen TCP-inkomend verkeer) Een poort voor TCP-inkomend verkeer. Als external dat het zo is true , moet de waarde uniek zijn in de Container Apps-omgeving als inkomend verkeer extern is. |
Een poortnummer van 1 naar 65535 . (kan niet of 80 443 ) |
Nee |
--transport |
vervoer | Het type transportprotocol. | automatisch (standaard) detecteert HTTP/1 of HTTP/2, http voor HTTP/1, http2 voor HTTP/2, tcp voor TCP. |
Nee |
Schakel inkomend verkeer in voor uw container-app met behulp van de portal.
U kunt inkomend verkeer inschakelen wanneer u uw container-app maakt of u kunt inkomend verkeer inschakelen voor een bestaande container-app.
- Als u inkomend verkeer wilt configureren wanneer u uw container-app maakt, selecteert u Inkomend verkeer op het tabblad App Configuration van de wizard voor het maken van de container-app.
- Als u inkomend verkeer voor een bestaande container-app wilt configureren, selecteert u Inkomend in het menu Instellingen van de resourcepagina van de container-app.
Inkomend verkeer inschakelen voor uw container-app:
U kunt inkomend verkeer configureren wanneer u uw container-app maakt met behulp van Azure Portal.
- Inkomend verkeer instellen op Ingeschakeld.
- Configureer de instellingen voor inkomend verkeer voor uw container-app.
- Selecteer Beperkt tot Container Apps Environment voor intern inkomend verkeer of verkeer vanaf elke locatie accepteren voor extern inkomend verkeer.
- Selecteer het type inkomend verkeer: HTTP of TCP (TCP-toegangsbeheerobject is alleen beschikbaar in omgevingen die zijn geconfigureerd met een aangepast virtueel netwerk).
- Als HTTP is geselecteerd voor het type inkomend verkeer, selecteert u transport: Auto, HTTP/1 of HTTP/2.
- Selecteer Onveilige verbindingen als u HTTP-verbindingen met uw app wilt toestaan.
- Voer de doelpoort voor uw container-app in.
- Als u TCP hebt geselecteerd voor de optie Transport, voert u de poort Beschikbaar voor uw container-app in. Het weergegeven poortnummer kan aan .
1
65535
(kan niet of80
443
)
Op de pagina Instellingen voor inkomend verkeer voor uw container-app kunt u ook IP-beperkingen configureren. Zie IP-beperkingen voor informatie over het configureren van IP-beperkingen.
Schakel inkomend verkeer in voor uw container-app met behulp van de ingress
configuratie-eigenschap. Stel de external
eigenschap in op true
en stel uw transport
en targetPort
eigenschappen in.
-external
eigenschap kan worden ingesteld op waar voor extern of onwaar voor inkomend verkeer.
- Stel de
transport
optie in omauto
HTTP/1 of HTTP/2 te detecteren,http
voor HTTP/1,http2
voor HTTP/2 oftcp
voor TCP. - Stel het
targetPort
poortnummer in dat door uw container wordt gebruikt. Uw eindpunt voor inkomend verkeer van uw toepassing wordt altijd weergegeven op poort443
. - Stel de
exposedPort
eigenschap in als het transporttype istcp
ingesteld op een poort voor TCP-inkomend verkeer. De waarde moet uniek zijn in de Container Apps-omgeving als inkomend verkeer extern is. Een poortnummer van1
naar65535
. (kan niet of80
443
)
{
...
"configuration": {
"ingress": {
"external": true,
"transport": "tcp",
"targetPort": 80,
"exposedPort": 8080,
},
}
}
Inkomend verkeer uitschakelen
Schakel inkomend verkeer voor uw container-app uit met behulp van de az containerapp ingress
opdracht.
az containerapp ingress disable \
--name <app-name> \
--resource-group <resource-group> \
U kunt inkomend verkeer voor uw container-app uitschakelen met behulp van de portal.
- Selecteer Inkomend verkeer in het menu Instellingen van de pagina container-app.
- Deselecteer de instelling Inkomend verkeer ingeschakeld .
- Selecteer Opslaan.
Schakel inkomend verkeer voor uw container-app uit door de ingress
configuratie-eigenschap properties.configuration
helemaal weg te laten.
Andere TCP-poorten gebruiken
U kunt extra TCP-poorten beschikbaar maken vanuit uw toepassing. Zie het conceptartikel voor inkomend verkeer voor meer informatie.
Notitie
Als u deze functie wilt gebruiken, moet u de CLI-extensie voor container-apps hebben. Voer az extension add -n containerapp
deze opdracht uit om de nieuwste versie van de CLI-extensie voor container-apps te installeren.
U kunt andere TCP-poorten toevoegen via de CLI door te verwijzen naar een YAML-bestand met uw TCP-poortconfiguraties.
az containerapp create \
--name <app-name> \
--resource-group <resource-group> \
--yaml <your-yaml-file>
Hier volgt een voorbeeld van een YAML-bestand waarnaar u kunt verwijzen in de bovenstaande CLI-opdracht. De configuratie voor de extra TCP-poorten bevindt zich onder additionalPortMappings
.
location: northcentralus
name: multiport-example
properties:
configuration:
activeRevisionsMode: Single
ingress:
additionalPortMappings:
- exposedPort: 21025
external: false
targetPort: 1025
allowInsecure: false
external: true
targetPort: 1080
traffic:
- latestRevision: true
weight: 100
transport: http
managedEnvironmentId: <env id>
template:
containers:
- image: maildev/maildev
name: maildev
resources:
cpu: 0.25
memory: 0.5Gi
scale:
maxReplicas: 1
minReplicas: 1
workloadProfileName: Consumption
type: Microsoft.App/containerApps
- Vouw de sectie Aanvullende TCP-poorten uit op de blade Inkomend verkeer.
- Voeg extra TCP-poorten toe waarop uw toepassing verkeer accepteert in het veld Doelpoort . Als de weergegeven poort leeg blijft, wordt deze opgehaald uit dezelfde waarde die is ingesteld in de doelpoort.
- Wijzig indien nodig het veld Inkomend verkeer . Hiermee configureert u waar inkomend verkeer wordt beperkt tot elke poort.
- Klik op Opslaan als u klaar bent.
De volgende ARM-sjabloon bevat een voorbeeld van hoe u extra poorten kunt toevoegen aan uw container-apps. Elke extra poort moet worden toegevoegd in additionalPortMappings
de ingress
sectie voor configuration
binnen properties
voor de container-app. Hier volgt een voorbeeld:
{
...
"properties": {
...
"configuration": {
"ingress": {
...
"additionalPortMappings": [
{
"external": false
"targetPort": 80
"exposedPort": 12000
}
]
}
}
...
}