Partager via


Démarrage rapide : Créer des fichiers Bicep avec Visual Studio

Ce guide de démarrage rapide vous guide tout au long des étapes de création d’un fichier Bicep avec Visual Studio. Vous créez un compte de stockage et un réseau virtuel. Vous découvrez également comment l’extension Bicep simplifie le développement en fournissant une sécurité de type, une validation de syntaxe et une autocomplétion.

L’expérience de création similaire est également prise en charge dans Visual Studio Code. Consultez démarrage rapide : Créer des fichiers Bicep avec Visual Studio Code.

Prerequisites

Ajouter un extrait de code de ressource

Lancez Visual Studio et créez un fichier nommé main.bicep.

Visual Studio avec l’extension Bicep simplifie le développement en fournissant des extraits de code prédéfinis. Dans ce guide de démarrage rapide, vous allez ajouter un extrait de code qui crée un réseau virtuel.

Dans main.bicep, tapez vnet. Sélectionnez res-vnet dans la liste, puis appuyez sur [TAB] ou [Entrée].

Capture d’écran de l’ajout d’un extrait de code pour le réseau virtuel.

Conseil / Astuce

Si vous ne voyez pas ces options IntelliSense dans Visual Studio, vérifiez que vous avez installé l’extension Bicep comme spécifié dans Les prérequis. Si vous avez installé l’extension, donnez au service linguistique Bicep un certain temps pour commencer après l’ouverture de votre fichier Bicep. Il démarre généralement rapidement, mais vous n’aurez pas d’options IntelliSense tant qu’il ne démarre pas.

Votre fichier Bicep contient désormais le code suivant :

resource virtualNetwork 'Microsoft.Network/virtualNetworks@2025-01-01' = {
  name: 'name'
  location: location
  properties: {
    addressSpace: {
      addressPrefixes: [
        '10.0.0.0/16'
      ]
    }
    subnets: [
      {
        name: 'Subnet-1'
        properties: {
          addressPrefix: '10.0.0.0/24'
        }
      }
      {
        name: 'Subnet-2'
        properties: {
          addressPrefix: '10.0.1.0/24'
        }
      }
    ]
  }
}

Cet extrait de code contient toutes les valeurs dont vous avez besoin pour définir un réseau virtuel. Toutefois, vous pouvez modifier ce code pour répondre à vos besoins. Par exemple, name n’est pas un excellent nom pour le réseau virtuel. Remplacez la propriété namepar exampleVnet .

name: 'exampleVnet'

Notez que l’emplacement a un trait de soulignement rouge. Cela indique un problème. Placez votre curseur sur l’emplacement. Le message d’erreur est : le nom « emplacement » n’existe pas dans le contexte actuel. Nous allons créer un paramètre d’emplacement dans la section suivante.

Ajouter des paramètres

À présent, nous ajoutons deux paramètres pour le nom du compte de stockage et l’emplacement. En haut du fichier, ajoutez :

param storageName

Lorsque vous ajoutez un espace après storageName, notez que IntelliSense propose les types de données disponibles pour le paramètre. Sélectionnez chaîne de caractères.

Capture d’écran de l’ajout d’un type de chaîne à un paramètre.

Vous disposez du paramètre suivant :

param storageName string

Ce paramètre fonctionne correctement, mais les comptes de stockage ont des limites sur la longueur du nom. Le nom doit comporter au moins trois caractères et pas plus de 24 caractères. Vous pouvez spécifier ces exigences en ajoutant des décorateurs au paramètre.

Ajoutez une ligne au-dessus du paramètre et tapez @. Vous voyez les décorateurs disponibles. Notez qu’il existe des décorateurs pour minLength et maxLength.

Capture d’écran de l’ajout d’éléments décoratifs au paramètre.

Ajoutez les deux décorateurs et spécifiez les limites de caractères, comme indiqué ci-dessous :

@minLength(3)
@maxLength(24)
param storageName string

Vous pouvez également ajouter une description pour le paramètre. Incluez des informations susceptibles d’aider les utilisateurs qui déploient le fichier Bicep à comprendre la valeur à fournir.

@minLength(3)
@maxLength(24)
@description('Provide a name for the storage account. Use only lower case letters and numbers. The name must be unique across Azure.')
param storageName string

Le paramètre de nom du compte de stockage est prêt à être utilisé.

Ajoutez un autre paramètre d’emplacement :

param location string = resourceGroup().location

Ajouter une ressource

Au lieu d’utiliser un extrait de code pour définir le compte de stockage, nous utilisons IntelliSense pour définir les valeurs. IntelliSense facilite cette étape plutôt que de taper manuellement les valeurs.

Pour définir une ressource, utilisez le resource mot clé. Sous votre réseau virtuel, tapez l’exemple de ressourceStorage :

resource exampleStorage

exampleStorage est un nom symbolique pour la ressource que vous déployez. Vous pouvez utiliser ce nom pour référencer la ressource dans d’autres parties de votre fichier Bicep.

Lorsque vous ajoutez un espace après le nom symbolique, une liste de types de ressources s’affiche. Continuez à taper le stockage jusqu’à ce que vous puissiez le sélectionner dans les options disponibles.

Capture d’écran de la sélection de comptes de stockage pour le type de ressource.

Après avoir sélectionné Microsoft.Storage/storageAccounts, vous êtes présenté avec les versions d’API disponibles. Sélectionnez 2021-09-01 ou la dernière version de l’API. Nous vous recommandons d’utiliser la dernière version de l’API.

Capture d’écran de la sélection de la version de l’API pour le type de ressource.

Après le guillemet unique pour le type de ressource, ajoutez = et un espace. Vous disposez des options permettant d’ajouter des propriétés à la ressource. Sélectionnez les propriétés requises.

Capture d’écran de l’ajout de propriétés requises.

Cette option ajoute toutes les propriétés du type de ressource requis pour le déploiement. Après avoir sélectionné cette option, votre compte de stockage a les propriétés suivantes :

resource exampleStorage 'Microsoft.Storage/storageAccounts@2025-06-01' = {
	name: 1
	location: 2
	sku: {
		name: 3
	}
	kind: 4
}

Il y a quatre espaces réservés dans le code. Utilisez [TAB] pour les parcourir et entrer les valeurs. Là encore, IntelliSense vous aide. Définissez name en tant que storageName, qui est le paramètre contenant un nom pour le compte de stockage. Pour location, définissez-le sur location. Lors de l’ajout du nom et du type de référence SKU, IntelliSense présente les options valides.

Une fois que vous avez terminé, vous avez :

@minLength(3)
@maxLength(24)
@description('Provide a name for the storage account. Use only lower case letters and numbers. The name must be unique across Azure.')
param storageName string
param location string = resourceGroup().location

resource virtualNetwork 'Microsoft.Network/virtualNetworks@2025-01-01' = {
  name: storageName
  location: location
  properties: {
    addressSpace: {
      addressPrefixes: [
        '10.0.0.0/16'
      ]
    }
    subnets: [
      {
        name: 'Subnet-1'
        properties: {
          addressPrefix: '10.0.0.0/24'
        }
      }
      {
        name: 'Subnet-2'
        properties: {
          addressPrefix: '10.0.1.0/24'
        }
      }
    ]
  }
}

resource exampleStorage 'Microsoft.Storage/storageAccounts@2025-06-01' = {
  name: storageName
  location: location
  sku: {
    name: 'Standard_LRS'
  }
  kind: 'StorageV2'
}

Pour plus d’informations sur la syntaxe Bicep, consultez la structure Bicep.

Déployer le fichier Bicep

Le déploiement de fichiers Bicep ne peut pas encore être effectué à partir de Visual Studio. Vous pouvez déployer le fichier Bicep à l’aide d’Azure CLI ou d’Azure PowerShell :

az group create --name exampleRG --location eastus

az deployment group create --resource-group exampleRG --template-file main.bicep --parameters storageName=uniquename

Une fois le déploiement terminé, un message doit s’afficher pour indiquer que le déploiement a réussi.

Nettoyer les ressources

Lorsque les ressources Azure ne sont plus nécessaires, utilisez azure CLI ou le module Azure PowerShell pour supprimer le groupe de ressources de démarrage rapide.

az group delete --name exampleRG

Étapes suivantes