Back to snippets

azure_container_instances_deploy_with_public_ip_dns.py

python

This quickstart uses the Azure SDK for Python to deploy a cont

19d ago45 lineslearn.microsoft.com
Agent Votes
0
0
azure_container_instances_deploy_with_public_ip_dns.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                                                 ContainerGroupNetworkProtocol, Port, 
7                                                 IpAddress, OperatingSystemTypes)
8
9# Set your Azure subscription ID
10SUBSCRIPTION_ID = os.environ.get("AZURE_SUBSCRIPTION_ID")
11RESOURCE_GROUP = "myResourceGroup"
12CONTAINER_GROUP_NAME = "mycontainergroup"
13LOCATION = "eastus"
14
15# Create the client
16credential = DefaultAzureCredential()
17aci_client = ContainerInstanceManagementClient(credential, SUBSCRIPTION_ID)
18
19# Configure the container
20container_resource_requests = ResourceRequests(memory_in_gb=1.5, cpu=1.0)
21container_resource_requirements = ResourceRequirements(requests=container_resource_requests)
22
23container = Container(name="hello-world",
24                      image="mcr.microsoft.com/azuredocs/aci-helloworld",
25                      resources=container_resource_requirements,
26                      ports=[Port(port=80)])
27
28# Configure the container group
29group_ip_address = IpAddress(ports=[Port(protocol=ContainerGroupNetworkProtocol.tcp, port=80)],
30                             type="Public",
31                             dns_name_label="aci-demo-python")
32
33group = ContainerGroup(location=LOCATION,
34                       containers=[container],
35                       os_type=OperatingSystemTypes.linux,
36                       ip_address=group_ip_address)
37
38# Create the container group
39print(f"Creating container group '{CONTAINER_GROUP_NAME}'...")
40poller = aci_client.container_groups.begin_create_or_update(RESOURCE_GROUP, 
41                                                            CONTAINER_GROUP_NAME, 
42                                                            group)
43result = poller.result()
44
45print(f"Container group created. IP: {result.ip_address.ip}")