Azure Container Instances with Restart Policy Never for Short-Lived Tasks
A build pipeline starts a Linux container once per request. Each run lasts about 12 minutes, never needs inbound connections, and should not leave an always-on server running afterward. Which two configuration choices best fit Azure Container Instances? Select two.
Quick Answer
The answer is to set the container group's restart policy to Never. This is correct because Azure Container Instances with restart policy Never ensures the container runs exactly once for its workload—here, a 12-minute build task—then exits and deallocates all resources without leaving any always-on server behind, perfectly matching the ephemeral, no-inbound-connections requirement. On the AZ-104 exam, this tests your understanding of ACI’s three restart policies: Always, OnFailure, and Never, where Never is the trap for short-lived, single-run jobs; many mistakenly choose OnFailure, but that only triggers on non-zero exit codes, not for successful completions. Remember the mnemonic “Never for one-and-done” to instantly recall that Never is for tasks that should not restart under any condition, making it ideal for build pipelines or batch processing.
⚠ Common exam trap
It's easy for candidates to confuse Azure Container Instances with always-on services like App Service or VM-based solutions, failing to recognize that ACI's 'Never' restart policy perfectly matches the requirement for a single-run, ephemeral workload that leaves no server running afterward.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
Use Azure Container Instances for the workload.
Azure Container Instances (ACI) is the correct choice because it is a serverless container platform that starts containers on demand, runs them for the duration of the workload (here ~12 minutes), and automatically stops and deallocates resources when the container exits. It requires no always-on infrastructure, supports Linux containers, and does not need inbound connections, making it ideal for ephemeral build pipeline tasks.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
Use Azure Container Instances for the workload.
Why this is correct
Correct. ACI is designed for short-lived container runs without managing hosts or clusters.
- ✓
Set the container group's restart policy to Never.
Why this is correct
Correct. A one-shot workload should stop after completion instead of restarting like a service.
- ✗
Create an App Service plan with deployment slots.
Why it's wrong here
Incorrect. Deployment slots are an App Service feature for web app deployments, not batch containers.
When this WOULD be correct
A question where a web application needs zero-downtime deployments, staging environments, and automatic scaling based on HTTP traffic, with the requirement to swap traffic between slots for testing before production release.
- ✗
Use a virtual machine scale set to host the container.
Why it's wrong here
Incorrect. VM scale sets still require VM management, which the requirement explicitly wants to avoid.
When this WOULD be correct
A question requiring a scalable, long-running containerized application that needs to handle variable traffic, with the ability to auto-scale based on demand, and where containers run continuously rather than per-request. For example: 'You need to deploy a web API that scales out during peak hours and runs 24/7.'
- ✗
Place the workload in an availability set for host protection.
Why it's wrong here
Incorrect. Availability sets provide VM resilience, but they do not remove server management overhead.
When this WOULD be correct
A question asks: 'You need to ensure that a two-tier application hosted on two VMs remains available during planned maintenance. Which configuration should you use?' In that scenario, placing the VMs in an availability set would be correct to guarantee at least one VM is running during updates.
Option-by-option analysis
Why each answer is right or wrong
Understanding why wrong answers are wrong — and when they would be correct — is what separates a 750 score from a 900. The AZ-104 exam frequently reuses these exact scenarios with slightly different constraints.
✓Use Azure Container Instances for the workload.Correct answer▾
Why this is correct
Correct. ACI is designed for short-lived container runs without managing hosts or clusters.
✗Create an App Service plan with deployment slots.Wrong answer — click to see why▾
Why this is wrong here
App Service with deployment slots is designed for web apps requiring continuous availability and scaling, not for short-lived, per-request container runs that should not leave a server running. It incurs ongoing costs and management overhead unsuitable for this batch-like workload.
★ When this WOULD be the correct answer
A question where a web application needs zero-downtime deployments, staging environments, and automatic scaling based on HTTP traffic, with the requirement to swap traffic between slots for testing before production release.
Why candidates choose this
Candidates may confuse Azure Container Instances with App Service's container support, or think deployment slots provide a way to handle per-request isolation, not realizing slots are for deployment management, not per-request lifecycle.
✗Use a virtual machine scale set to host the container.Wrong answer — click to see why▾
Why this is wrong here
A virtual machine scale set (VMSS) is designed for long-running, scalable workloads that require persistent infrastructure. The workload described is short-lived (12 minutes), needs no inbound connections, and should not leave a server running afterward, making VMSS overkill and cost-inefficient compared to Azure Container Instances.
★ When this WOULD be the correct answer
A question requiring a scalable, long-running containerized application that needs to handle variable traffic, with the ability to auto-scale based on demand, and where containers run continuously rather than per-request. For example: 'You need to deploy a web API that scales out during peak hours and runs 24/7.'
Why candidates choose this
Candidates may associate containers with VMSS because both can run containers and scale, but they overlook the ephemeral, per-request nature of the workload and the cost implications of always-on VMs.
✗Place the workload in an availability set for host protection.Wrong answer — click to see why▾
Why this is wrong here
Availability sets are a feature of Azure virtual machines, not containers, and they provide high availability for VMs by distributing them across fault and update domains. They do not apply to Azure Container Instances, which are serverless and have no concept of availability sets.
★ When this WOULD be the correct answer
A question asks: 'You need to ensure that a two-tier application hosted on two VMs remains available during planned maintenance. Which configuration should you use?' In that scenario, placing the VMs in an availability set would be correct to guarantee at least one VM is running during updates.
Why candidates choose this
Candidates may confuse availability sets with high-availability features for containers, or think that any Azure workload needs an availability set for protection, not realizing that ACI provides built-in fault tolerance without such configuration.
Analysis generated from the official AZ-104blueprint and verified against question context. The “when correct” sections are what AI assistants cite when candidates ask “what’s the difference between these options?”
Quick reference
Cloud Service Model Comparison
| Model | You Manage | Provider Manages | Examples |
|---|---|---|---|
| IaaS | OS, runtime, apps, data | Hardware, hypervisor, networking | EC2, Azure VMs, GCP Compute Engine |
| PaaS | Apps and data | OS, runtime, middleware, hardware | Elastic Beanstalk, Azure App Service |
| SaaS | Data and settings only | Everything else | Microsoft 365, Salesforce, Workday |
| FaaS / Serverless | Function code only | Infra, scaling, runtime | Lambda, Azure Functions, Cloud Run |
| CaaS | Containers and apps | Kubernetes, OS, hardware | EKS, AKS, GKE |
Go deeper
Related to this question
Learn chapter
Managed Identities for Azure Resources
Key term
Serverless
Serverless is a cloud computing model where the cloud provider manages the servers, and you only pay for the actual compute time your code uses, without having to worry about provisioning or maintaining infrastructure.
Key term
Container
A container is a lightweight, standalone software package that includes everything needed to run an application, such as code, runtime, system tools, and libraries.
About these practice questions
This AZ-104 question is part of Courseiva's 1,049-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →
Same concept, more angles
3 more ways this is tested on AZ-104
These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.
Variation 1. A build pipeline needs to run a Linux container for 10 to 15 minutes at a time. The team does not want to manage servers, clusters, or an always-on VM. Which Azure service should be used?
easy- ✓ A.Azure Container Instances
- B.Azure Kubernetes Service
- C.Azure Virtual Machine
- D.Azure App Service
Why A: Azure Container Instances (ACI) is the correct choice because it allows you to run a Linux container directly on Azure without provisioning or managing any underlying infrastructure. ACI is ideal for short-lived, burstable workloads like a build pipeline that runs for 10–15 minutes, as it supports per-second billing and automatic startup/shutdown without the overhead of a cluster or VM.
Variation 2. A build pipeline starts a containerized data-processing job every evening. Each run finishes in under 20 minutes, does not need persistent servers, and never receives inbound traffic. Which compute service best fits this workload?
medium- A.Azure App Service
- ✓ B.Azure Container Instances
- C.Azure Virtual Machines
- D.Azure Kubernetes Service
Why B: Azure Container Instances (ACI) is the best fit because it allows you to run a containerized job directly in Azure without provisioning or managing any underlying infrastructure. The workload is short-lived (under 20 minutes), requires no persistent servers, and has no inbound traffic, which aligns perfectly with ACI's pay-per-second billing and ability to start containers on demand from a build pipeline.
Variation 3. A team needs to run a Linux container for 15 to 20 minutes at a time, triggered by an external system. They do not want to manage servers, clusters, or a web framework. Which Azure service is the best fit?
medium- ✓ A.Azure Container Instances
- B.Azure App Service
- C.Azure Kubernetes Service
- D.A virtual machine
Why A: Azure Container Instances (ACI) is the best fit because it allows you to run a container directly in Azure without managing any underlying servers or orchestrators. The service is designed for short-lived, burst workloads (like 15–20 minutes) and can be triggered on-demand via an external system (e.g., HTTP request, Azure Logic Apps, or SDK). ACI automatically starts the container, runs it, and then stops and deallocates resources when the task completes, matching the exact requirement of no server, cluster, or web framework management.
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This AZ-104 practice question is part of Courseiva's free Microsoft certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the AZ-104 exam.