title | description | ms.date | ms.topic | ms.custom |
---|---|---|---|---|
Provision Azure Storage with the Azure libraries for Python |
Use the Azure SDK for Python libraries to provision a blob container in an Azure Storage account and then upload a file to that container. |
06/24/2021 |
conceptual |
devx-track-python, devx-track-azurecli |
In this article, you learn how to use the Azure management libraries in a Python script to provision a resource group that contains and Azure Storage account and a Blob storage container. (Equivalent Azure CLI commands are given later in this article. If you prefer to use the Azure portal, see Create an Azure storage account and Create a blob container.)
After provisioning the resources, see Example: Use Azure Storage to use the Azure client libraries in Python application code to upload a file to the Blob storage container.
All the commands in this article work the same in Linux/macOS bash and Windows command shells unless noted.
If you haven't already, follow all the instructions on Configure your local Python dev environment for Azure.
Be sure to create a service principal for local development, and create and activate a virtual environment for this project.
-
Create a requirements.txt file that lists the management libraries used in this example:
:::code language="txt" source="~/../python-sdk-docs-examples/storage/requirements_provision.txt":::
-
In your terminal with the virtual environment activated, install the requirements:
pip install -r requirements.txt
This section describes how to provision storage resources from Python code. If you prefer, you can also provision resources through the Azure portal or through the equivalent Azure CLI commands.
Create a Python file named provision_blob.py with the following code. The comments explain the details:
:::code language="python" source="~/../python-sdk-docs-examples/storage/provision_blob.py":::
[!INCLUDE cli-auth-note]
- AzureCliCredential (azure.identity)
- ResourceManagementClient (azure.mgmt.resource)
- StorageManagementClient (azure.mgmt.storage)
python provision_blob.py
The script will take a minute or two to complete.
-
Open the Azure portal to verify that the resource group and storage account were provisioned as expected. You may need to wait a minute and also select Show hidden types in the resource group to see a storage account provisioned from a Python script:
-
Select the storage account, then select Data storage > Containers in the left-hand menu to verify that the "blob-container-01" appears:
-
If you want to try using these provisioned resources from application code, continue with Example: Use Azure Storage.
For an additional example of using the Azure Storage management library, see the Manage Python Storage sample.
The following Azure CLI commands complete the same provisioning steps as the Python script:
:::code language="azurecli" source="~/../python-sdk-docs-examples/storage/provision.cmd":::
:::code language="azurecli" source="~/../python-sdk-docs-examples/storage/provision.sh":::
Leave the resources in place if you want to follow the article Example: Use Azure Storage to use these resources in app code.
Otherwise, run the following command to avoid ongoing charges in your subscription.
az group delete -n PythonAzureExample-Storage-rg --no-wait
[!INCLUDE resource_group_begin_delete]
- Example: Use Azure Storage
- Example: Provision a resource group
- Example: List resource groups in a subscription
- Example: Provision a web app and deploy code
- Example: Provision and query a database
- Example: Provision a virtual machine
- Use Azure Managed Disks with virtual machines
- Complete a short survey about the Azure SDK for Python