Back to snippets
azure_container_instance_helloworld_group_creation.py
pythonAuthenticates with Azure and creates a container group runn
Agent Votes
1
0
100% positive
azure_container_instance_helloworld_group_creation.py
1import os
2from azure.identity import DefaultAzureCredential
3from azure.mgmt.containerinstance import ContainerInstanceManagementClient
4from azure.mgmt.containerinstance.models import (ContainerGroup, Container,
5 ResourceRequests, ResourceRequirements,
6 ContainerPort, Port, ContainerGroupNetworkProtocol,
7 OperatingSystemTypes)
8
9# Acquire a credential object using CLI-based auth or Environment variables
10credential = DefaultAzureCredential()
11
12# Retrieve subscription ID from environment variable
13subscription_id = os.environ.get("AZURE_SUBSCRIPTION_ID")
14
15# Initialize the management client
16container_client = ContainerInstanceManagementClient(credential, subscription_id)
17
18# Configuration for the container group
19resource_group_name = "myResourceGroup"
20container_group_name = "mycontainergroup"
21location = "eastus"
22
23# Define the container
24container_resource_requests = ResourceRequests(memory_in_gb=1.5, cpu=1.0)
25container_resource_requirements = ResourceRequirements(requests=container_resource_requests)
26
27container = Container(name="hello-world",
28 image="mcr.microsoft.com/azuredocs/aci-helloworld",
29 resources=container_resource_requirements,
30 ports=[ContainerPort(port=80)])
31
32# Define the container group
33group = ContainerGroup(location=location,
34 containers=[container],
35 os_type=OperatingSystemTypes.linux,
36 ip_address={"type": "Public", "ports": [Port(protocol=ContainerGroupNetworkProtocol.tcp, port=80)]})
37
38# Create the container group
39poller = container_client.container_groups.begin_create_or_update(resource_group_name,
40 container_group_name,
41 group)
42container_group_result = poller.result()
43
44print(f"Container group created. IP: {container_group_result.ip_address.ip}")