Features & tools for Azure Cloud Shell

Azure Cloud Shell is a browser-based shell experience to manage and develop Azure resources.

Cloud Shell offers a browser-accessible, pre-configured shell experience for managing Azure resources without the overhead of installing, versioning, and maintaining a machine yourself.

Cloud Shell provisions machines on a per-request basis and as a result machine state will not persist across sessions. Since Cloud Shell is built for interactive sessions, shells automatically terminate after 20 minutes of shell inactivity.

Azure Cloud Shell runs on Common Base Linux - Mariner (CBL-Mariner), Microsoft's Linux distribution for cloud-infrastructure-edge products and services.

Microsoft internally compiles all the packages included in the CBL-Mariner repository to help guard against supply chain attacks. Tooling has been updated to reflect the new base image CBL-Mariner. You can get a full list of installed package versions using the following command: tdnf list installed. If these changes affected your Cloud Shell environment, please contact Azuresupport or create an issue in the Cloud Shell repository.


Secure automatic authentication

Cloud Shell securely and automatically authenticates account access for the Azure CLI and Azure PowerShell.

$HOME persistence across sessions

To persist files across sessions, Cloud Shell walks you through attaching an Azure file share on first launch. Once completed, Cloud Shell will automatically attach your storage (mounted as $HOME\clouddrive) for all future sessions. Additionally, your $HOME directory is persisted as an .img in your Azure File share. Files outside of $HOME and machine state are not persisted across sessions. Use best practices when storing secrets such as SSH keys. Services like Azure Key Vault have tutorials for setup.

Learn more about persisting files in Cloud Shell.

Azure drive (Azure:)

PowerShell in Cloud Shell provides the Azure drive (Azure:). You can switch to the Azure drive with cd Azure: and back to your home directory with cd ~. The Azure drive enables easy discovery and navigation of Azure resources such as Compute, Network, Storage etc. similar to filesystem navigation. You can continue to use the familiar Azure PowerShell cmdlets to manage these resources regardless of the drive you are in. Any changes made to the Azure resources, either made directly in Azure portal or through Azure PowerShell cmdlets, are reflected in the Azure drive. You can run dir -Force to refresh your resources.

Screenshot of an Azure Cloud Shell being initialized and a list of directory resources.

Manage Exchange Online

PowerShell in Cloud Shell contains a private build of the Exchange Online module. Run Connect-EXOPSSession to get your Exchange cmdlets.

Screenshot of an Azure Cloud Shell running the commands Connect-EXOPSSession and Get-User.

Run Get-Command -Module tmp_*


The module name should begin with tmp_, if you have installed modules with the same prefix, their cmdlets will also be surfaced.

Screenshot of an Azure Cloud Shell running the command Get-Command -Module tmp_*.

Deep integration with open-source tooling

Cloud Shell includes pre-configured authentication for open-source tools such as Terraform, Ansible, and Chef InSpec. Try it out from the example walkthroughs.


Category Name
Linux tools bash
Azure tools Azure CLI and Azure classic CLI
Azure Functions CLI
Service Fabric CLI
Batch Shipyard
Text editors code (Cloud Shell editor)
Source control git
Build tools make
Containers Docker Machine
Databases MySQL client
PostgreSql client
sqlcmd Utility
Other iPython Client
Cloud Foundry CLI
Chef InSpec
Puppet Bolt
HashiCorp Packer
Office 365 CLI

Language support

Language Version
.NET Core 3.1.302
Go 1.9
Java 1.8
Node.js 8.16.0
PowerShell 7.0.0
Python 2.7 and 3.7 (default)

Next steps

Bash in Cloud Shell Quickstart
PowerShell in Cloud Shell Quickstart
Learn about Azure CLI
Learn about Azure PowerShell