Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Het gemak en de snelheid waarmee containers in Azure Container Instances worden geïmplementeerd, zorgt voor een aantrekkelijk platform voor het uitvoeren van eenmalige taken zoals bouwen, testen en rendering van afbeeldingen in een containerinstantie.
Met een configureerbaar beleid voor opnieuw opstarten kunt u opgeven dat uw containers worden gestopt wanneer hun processen zijn voltooid. Omdat Azure containerinstanties per seconde factureert, worden er alleen kosten in rekening gebracht voor de rekenresources die worden gebruikt terwijl de container die uw taak uitvoert, wordt uitgevoerd.
In de voorbeelden in dit artikel wordt de Azure CLI gebruikt. U moet Azure CLI versie 2.0.21 of hoger lokaal hebben geïnstalleerd of de CLI gebruiken in Azure Cloud Shell.
Beleid voor opnieuw opstarten van containers
Wanneer u een containergroep maakt in Azure Container Instances, kunt u een van de drie beleidsinstellingen voor opnieuw opstarten opgeven.
| Beleid voor opnieuw opstarten | Beschrijving |
|---|---|
Always |
Containers in de containergroep worden altijd opnieuw gestart. Dit beleid is de standaardinstelling die wordt toegepast wanneer er geen beleid voor opnieuw opstarten is opgegeven bij het maken van de container. |
Never |
Containers in de containergroep worden nooit opnieuw gestart. De containers worden maximaal één keer uitgevoerd. |
OnFailure |
Containers in de containergroep worden alleen opnieuw gestart als het proces in de container mislukt (wanneer deze wordt afgesloten met een andere afsluitcode dan nul). De containers draaien ten minste één keer. |
Notitie
Als uw containergroep is geconfigureerd met een IP-adres, kan dat IP-adres worden gewijzigd wanneer de containergroep opnieuw wordt opgestart.
Het opnieuw opstartbeleid instellen
Hoe u een beleid voor opnieuw opstarten opgeeft, is afhankelijk van hoe u uw containerinstanties maakt, zoals met de Azure CLI, Azure PowerShell-cmdlets of in Azure Portal. Geef in de Azure CLI de --restart-policy parameter op wanneer u az container create aanroept.
az container create \
--resource-group myResourceGroup \
--name mycontainer \
--image mycontainerimage \
--restart-policy OnFailure
Voorbeeld van volledige uitvoering
Als u het beleid voor opnieuw opstarten in actie wilt zien, maakt u een containerinstantie van de Microsoft aci-wordcount-installatiekopie en geeft u het OnFailure beleid voor opnieuw opstarten op. In deze voorbeeldcontainer wordt een Python-script uitgevoerd dat standaard de tekst van Shakespeare's Hamlet analyseert, de 10 meest voorkomende woorden naar STDOUT schrijft en vervolgens wordt afgesloten.
Voer de voorbeeldcontainer uit met de volgende opdracht az container create :
az container create \
--resource-group myResourceGroup \
--name mycontainer \
--image mcr.microsoft.com/azuredocs/aci-wordcount:latest \
--restart-policy OnFailure
Azure Container Instances start de container en stopt deze wanneer de toepassing (of het script in dit geval) wordt afgesloten. Wanneer Azure Container Instances een container stopt waarvan het beleid voor opnieuw opstarten is Never of OnFailure, wordt de status van de container ingesteld op Beëindigd. U kunt de status van een container controleren met de opdracht az container show :
az container show \
--resource-group myResourceGroup \
--name mycontainer \
--query containers[0].instanceView.currentState.state
Voorbeelduitvoer:
"Terminated"
Wanneer de status van de voorbeeldcontainer Beëindigd is, kunt u de taakuitvoer zien door de containerlogboeken te bekijken. Voer de opdracht az container logs uit om de uitvoer van het script te bekijken:
az container logs --resource-group myResourceGroup --name mycontainer
Uitvoer:
[('the', 990),
('and', 702),
('of', 628),
('to', 610),
('I', 544),
('you', 495),
('a', 453),
('my', 441),
('in', 399),
('HAMLET', 386)]
In dit voorbeeld ziet u de uitvoer die het script naar STDOUT heeft verzonden. Uw in containers geplaatste taken kunnen echter in plaats daarvan hun uitvoer naar permanente opslag schrijven voor later ophalen. Bijvoorbeeld naar een Azure-bestandsshare.
Volgende stappen
Op taken gebaseerde scenario's, zoals batchverwerking van een grote gegevensset met verschillende containers, kunnen tijdens runtime profiteren van aangepaste omgevingsvariabelen of opdrachtregels.
Zie Koppeling van een Azure-bestandsshare met Azure Container Instances voor meer informatie over hoe u de uitvoer van uw containers kunt bewaren wanneer deze zijn voltooid.