Getting Started with Azure Bicep (Step


The Best WordPress plugins!

1. WP Reset

2. WP 301 Redirects

3. WP Force SSL

One of the best ways to get started with Azure Bicep is by following this step-by-step guide.

The “azure bicep learning path” is a step-by-step guide on how to get started with Azure Bicep.

Getting Started with Azure Bicep (Step

Is it necessary to create infrastructure in Azure? Have you ever glanced at an ARM template and thought to yourself, “Wow, that seems complicated.” Because many people complained about how difficult it was to create ARM templates, Microsoft created Azure Bicep, an abstraction layer.

This video will teach you how to get started from the ground up. Everything from setting up a development environment to deploying your first Bicep template will be covered!

Let’s get going!


This will be an interactive presentation. If you want to follow along, make sure you have these items:

  • Windows 10 — Although the bulk of the demonstrations in this article will work on other operating systems, they will all be performed on Windows 10.
  • This tutorial will utilize Visual Studio Code v1.60.2.

A Tutorial on What You Need to Know About Visual Studio Code

What is Azure Bicep, exactly?

Bicep is a domain-specific language that simplifies the creation of ARM templates. Bicep may be thought of as an abstraction layer above ARM templates. ARM employs JSON, which may be difficult to understand, particularly for big installations.

Bicep was created by Microsoft in order to decrease complications and enhance the development experience. It’s not a whole new language; rather, consider it an enhancement to the JSON ARM templates.

Creating an Environment for Bicep Development

To begin creating Bicep templates, you must first create an atmosphere that will allow you to get the greatest outcomes. You have a few tools at your disposal to do this. Let’s start by configuring the environment, which includes the VS Code Bicep plugin, the Bicep CLI, and the Azure PowerShell modules if desired.

Installing the Bicep Extension for Visual Studio Code

VS Code is an excellent tool for creating Bicep templates. As a result, Microsoft offers a Visual Studio Code plugin to assist in the creation of Bicep templates. Let’s begin by setting up VS Code as a programming environment.

A Tutorial on What You Need to Know About Visual Studio Code

Select the Extensions button in Visual Studio Code.

Adding new extensions Adding new extensions

Type “bicep” into the search bar. A single Bicep extension should show up. When this occurs, choose Install. VS Code will install the Bicep extension in a few seconds.

Look for and install the bicep extension. Look for and install the bicep extension.

Even if the Bicep template in the next part may be copied and pasted, there will be instances when you need to make Bicep templates from scratch. Because of its Intellisense characteristics, the Bicep extension in VS Code comes in helpful here.

If you open a file with the extension.bicep in VS Code, the program will try to present you with shortcuts. In a Bicep template, for example, the resource keyword is used to construct Azure resources. VS Code recognizes this if you have the Bicep extension installed.

The resource command is typed. The resource command is typed.

Instead of having to memorize the precise syntax every time, selecting one of the supplied menu selections provides an automated template to fill out.

 Biceps blank template Biceps blank template

Another useful shortcut when constructing Bicep templates is the period (.). You may examine all the attributes accessible for a storage account by putting this in the properties section, for example.

A storage account's accessible properties A storage account’s accessible properties

Bicep CLI Installation

You must use the Bicep CLI to call Bicep templates after they have been built. Check to determine whether the Bicep CLI is already installed before trying to install it. The Bicep CLI may already be installed depending on the version of the Azure CLI you have installed. To find out, run a PowerShell console or terminal and look for the Version of Bicep CLI.

You’ll notice a version statement if you have the Bicep CLI installed, as seen below.

Version of Bicep CLI Version of Bicep CLI

If an error message appears stating that the Bicep CLI cannot be found, use the install subcommand to install the Bicep CLI.

The output should now look like this. It indicates that the Bicep CLI has been installed successfully and is ready to use.

Bicep was successfully installed. Bicep was successfully installed.

The Bicep CLI may also be installed using the Bicep Windows Installer as an alternative approach.

Creating a Bicep Template for Storage Account Deployment

Bicep can deploy some complicated Azure resources, but let’s take it gently at first. Let’s start by creating a basic Azure storage account, which you’ll use in the following part to deploy to Azure using both the Azure CLI and PowerShell.

1. In Visual Studio Code, create a new file named main. bicep. You don’t have to name the file precisely like this, although naming the template main with a.bicep extension is usual.

2. Save the file after copying and pasting the Bicep template code below. This template includes all of the elements that make up a Bicep template.

You’ll notice several characteristics that are shared by all Bicep templates:

  • Bicep is instructed to build a new resource called myStorage using the resource identifier (resource myStorage). This name is used to identify a specific resource inside the Bicep template. This is not the name of the Azure resource that was created.
  • Microsoft.Storage/[email protected]– Defines a type that includes the resource provider Microsoft.Storage, the resource type (storageAccounts), and the API version to use (2019-06-01).
  • name – The resource’s name as it appears in Azure (pay attention to the rules and restrictions for naming Azure resources.)
  • location – The Azure region in which the resource will be created.

There are various properties that are unique to the storageAccounts resource type:

  • SKU – As indicated in the property name, the storage account SKU (Standard LRS).
  • sort – The storage account type (StorageV2).
  • properties – This section contains certain resource-specific properties that don’t have their own section, such as accessTier. These are the same features seen in ARM templates.

‘Microsoft.Storage/[email protected]’ resource myStorage ‘ = location: ‘uksouth’ name: ‘ata2021bicepdiskstorage’ name: ‘Standard LRS’ SKU: ‘StorageV2’ type accessTier: ‘Hot’ is one among the attributes.

Using PowerShell to deploy a Bicep Template

As previously noted, you may use the Azure CLI or the Azure PowerShell module to install Bicep templates. Let’s start by using PowerShell to install a Bicep template.

Before you begin, make sure you have the Azure PowerShell module loaded and are authenticated to Azure.

Using Bicep templates to deploy Azure resources is the same as using ARM templates. Many of the current PowerShell ARM cmdlets, such as New-AzResourceGroupDeployment, have been updated to support the Bicep language.

Use the New-AzResourceGroupDeployment cmdlet in your PowerShell console to create a new resource group deployment, passing in the location of the Bicep template and the ResourceGroupName to deploy to. You’ll see that a Bicep template functions similarly to an ARM template.

-TemplateFile main.bicep -ResourceGroupName ATA New-AzResourceGroupDeployment

If the deployment was successful, the property ProvisioningState should be set to successful in your PowerShell session. That’s it!

Using Bicep to deploy resources Using Bicep to deploy resources

Log into the Microsoft Azure Portal, browse to your resource group, and you should notice a freshly established storage account within that resource group.

Microsoft Azure Portal Microsoft Azure Portal

If you’re following along and established a sample storage account, remember to delete it! It’s worth noting that the ResourceName matches the name supplied in the Bicep template.

Remove-AzResource -ResourceName ata2021bicepdiskstorage -ResourceGroupName ATA -ResourceType “Microsoft.Storage/storageAccounts” Remove-AzResource -ResourceName ata2021bicepdiskstorage

The following output will now appear.

An Azure storage account may be removed. An Azure storage account may be removed.

Using the Azure CLI to deploy a Bicep Template

Let’s finish off this article by using the Azure CLI to deploy your newly created Bicep template.

Before you begin, make sure you have Azure CLI v2.2.0+ installed and logged in.

Invoke an ARM deployment using the az deployment group create command in PowerShell or another terminal. This command, like PowerShell, does an ARM deployment. Use the template-file argument to indicate the resource-group to deploy to, as well as the Bicep template you produced previously.

—resource-group ATA —template-file main.bicep az deployment group create

If provisioningState is set to Succeeded, as seen below, ARM has read the Bicep template and followed all of the instructions!

provisioningState is set to successful. provisioningState is set to successful.

az deployment command output in JSON az deployment command output in JSON

Remember to use az resource delete -g ATA -n ata2021bicepdiskstorage —resource-type “Microsoft.Storage/storageAccounts” to wipe out the resource.


What should you do now that you’ve set up an Azure Bicep development environment and a resource in Azure? Consider what Microsoft Learn has to offer through Bicep.

Perhaps a presentation to your coworkers on how Bicep might benefit your company?

Azure Bicep is a cloud-based service that helps you build and deploy applications. This step by step guide will help you get started with Azure Bicep. Reference: azure bicep samples.

Related Tags

  • azure bicep tutorial
  • azure bicep functions
  • azure bicep vs terraform
  • azure bicep parameters file
  • azure bicep github

Table of Content