Mulai cepat: Membuat file Bicep dengan Visual Studio Code

Panduan mulai cepat ini memandu Anda melalui langkah-langkah untuk membuat file Bicep dengan Visual Studio Code. Anda membuat akun penyimpanan dan jaringan virtual. Anda juga mempelajari bagaimana ekstensi Bicep menyederhanakan pengembangan dengan memberikan keamanan jenis, validasi sintaksis, dan pelengkapan otomatis.

Pengalaman penulisan serupa juga didukung di Visual Studio. Lihat Mulai Cepat: Membuat file Bicep dengan Visual Studio.

Prasyarat

Jika Anda tidak memiliki langganan Azure, buat akun gratis sebelum Anda memulai.

Untuk menyiapkan lingkungan untuk pengembangan Bicep, lihat Pasang alat Bicep. Setelah menyelesaikan langkah-langkah tersebut, Anda memiliki Visual Studio Code dan ekstensi Bicep. Anda juga memiliki salah satu dari Azure CLI terbaru atau modul Microsoft Azure PowerShell terbaru.

Menambahkan cuplikan sumber daya

Visual Studio Code dengan ekstensi Bicep menyederhanakan pengembangan dengan menyediakan cuplikan yang telah ditentukan sebelumnya. Dalam mulai cepat ini, Anda menambahkan cuplikan yang membuat jaringan virtual.

Luncurkan Visual Studio Code dan buat file baru bernama main.bicep.

Di main.bicep, ketik vnet, lalu pilih res-vnet dari daftar, lalu tekan [TAB] atau [ENTER].

Screenshot of adding snippet for virtual network.

Tip

Jika Anda tidak melihat opsi intellisense tersebut di Visual Studio Code, pastikan Anda telah menginstal ekstensi Bicep seperti yang ditentukan dalam Prasyarat. Jika Anda telah menginstal ekstensi, berikan layanan bahasa Bicep beberapa waktu untuk memulai setelah membuka file Bicep Anda. Biasanya dimulai dengan cepat, tetapi Anda tidak memiliki opsi intellisense sampai dimulai. Pemberitahuan di sudut kanan bawah menunjukkan bahwa layanan dimulai. Ketika pemberitahuan itu menghilang, layanan sedang berjalan.

File Bicep Anda kini berisi kode berikut:

resource virtualNetwork 'Microsoft.Network/virtualNetworks@2019-11-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'
        }
      }
    ]
  }
}

Dalam cuplikan ini, Anda menemukan semua nilai yang diperlukan untuk menentukan jaringan virtual. Anda mungkin melihat dua garis bawah keriting. Yang kuning menunjukkan peringatan yang terkait dengan versi API yang kedaluwarsa, sementara garis bawah keriting merah menandakan kesalahan yang disebabkan oleh definisi parameter yang hilang.

Hapus @2019-11-01, dan ganti dengan @. Pilih versi API terbaru.

Screenshot of updating API version.

Anda akan memperbaiki kesalahan definisi parameter yang hilang di bagian berikutnya.

Anda juga dapat memodifikasi kode ini untuk memenuhi kebutuhan Anda. Misalnya, name bukan nama yang bagus untuk jaringan virtual. Ubah properti name menjadi examplevnet.

name: 'exampleVNet'

Menambahkan parameter

Cuplikan kode yang Anda tambahkan di bagian terakhir melewatkan definisi parameter.

Di bagian atas file, tambahkan:

param location

Saat Anda menambahkan spasi setelah lokasi, perhatikan bahwa intellisense menawarkan jenis data yang tersedia untuk parameter . Pilih untai (karakter).

Screenshot of adding string type to parameter.

Beri parameter nilai default:

param location string = resourceGroup().location

Untuk informasi selengkapnya tentang fungsi yang digunakan dalam nilai default, lihat resourceGroup().

Tambahkan parameter lain untuk nama akun penyimpanan dengan nilai default:

param storageAccountName string = 'store${uniqueString(resourceGroup().id)}'

Untuk informasi selengkapnya, lihat Interpolasi dan uniqueString().

Parameter ini berfungsi dengan baik, tetapi akun penyimpanan memiliki batasan pada panjang nama. Nama harus memiliki setidaknya tiga karakter dan tidak lebih dari 24 karakter. Anda dapat menentukan persyaratan tersebut dengan menambahkan dekorator ke parameter.

Tambahkan baris di atas parameter, dan ketik @. Anda akan melihat dekorator yang tersedia. Perhatikan, terdapat dekorator untuk minLength dan maxLength.

Screenshot of adding decorators to parameter.

Tambahkan kedua dekorator dan tentukan batas karakter:

@minLength(3)
@maxLength(24)
param storageAccountName string = 'store${uniqueString(resourceGroup().id)}'

Anda juga dapat menambahkan deskripsi untuk parameter. Sertakan informasi untuk membantu orang-orang yang menyebarkan file Bicep memahami nilai yang akan disediakan.

@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 storageAccountName string = 'store${uniqueString(resourceGroup().id)}'

Parameter Anda siap digunakan.

Tambahkan sumber daya

Alih-alih menggunakan cuplikan untuk menentukan akun penyimpanan, Anda menggunakan intellisense untuk mengatur nilai. Intellisense membuat langkah ini lebih mudah daripada harus mengetik nilai secara manual.

Untuk menentukan sumber daya, gunakan kata kunci resource. Di bawah jaringan virtual, ketik resource exampleStorage:

resource exampleStorage

exampleStorage adalah nama simbolis untuk sumber daya yang Anda sebarkan. Anda menggunakan nama ini untuk mereferensikan sumber daya di bagian lain pada file Bicep Anda.

Ketika Anda menambahkan spasi setelah nama simbolis, daftar jenis sumber daya ditampilkan. Lanjutkan mengetik storageacc hingga Anda dapat memilihnya dari opsi yang tersedia.

Screenshot of selecting storage accounts for resource type.

Setelah memilih Microsoft.Storage/storageAccounts, Anda disajikan dengan versi API yang tersedia. Pilih versi terbaru. Untuk cuplikan layar berikut, ini adalah 2023-01-01.

Screenshot of select API version for resource type.

Setelah kuotasi tunggal untuk jenis sumber daya, tambahkan = dan spasi. Anda disajikan dengan opsi untuk menambahkan properti ke sumber daya. Pilih properti yang diperlukan.

Screenshot of adding required properties.

Opsi ini menambahkan semua properti untuk jenis sumber daya yang diperlukan untuk penyebaran. Setelah memilih opsi ini, akun penyimpanan Anda memiliki properti berikut:

resource exampleStorage 'Microsoft.Storage/storageAccounts@2023-01-01' =  {
  name:
  location:
  sku: {
    name:
  }
  kind:
}

Anda hampir selesai. Cukup berikan nilai untuk properti tersebut.

Lagi, intellisense membantu Anda. Atur name ke storageAccountName yang merupakan parameter yang berisi nama akun penyimpanan. Untuk location, atur ke location, yang merupakan parameter yang Anda buat sebelumnya. Saat menambahkan sku.name dan kind, intellisense menyajikan opsi yang valid.

Setelah selesai, Anda memiliki:

@minLength(3)
@maxLength(24)
param storageAccountName string = 'store${uniqueString(resourceGroup().id)}'

resource virtualNetwork 'Microsoft.Network/virtualNetworks@2019-11-01' = {
  name: 'exampleVNet'
  location: resourceGroup().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@2021-02-01' = {
  name: storageAccountName
  location: 'eastus'
  sku: {
    name: 'Standard_LRS'
  }
  kind: 'StorageV2'
}

Untuk informasi selengkapnya tentang sintaks Bicep, lihat struktur Bicep.

Memvisualisasikan sumber daya

Anda dapat melihat representasi sumber daya dalam file Anda.

Dari sudut kiri atas, pilih tombol visualizer untuk membuka Visualizer Bicep.

Screenshot of Bicep Visualizer.

Visualizer menunjukkan sumber daya yang ditentukan dalam file Bicep dengan informasi dependensi sumber daya. Dua sumber daya yang ditentukan dalam mulai cepat tidak memiliki hubungan dependensi, sehingga Anda tidak melihat konektor di antara dua sumber daya.

Screenshot of Bicep Visualizer diagram.

Menerapkan file Bicep

  1. Klik kanan file Bicep di dalam Visual Studio Code, lalu pilih Sebarkan file Bicep.

    Screenshot of Deploy Bicep file.

  2. Dalam kotak teks Silakan masukkan nama untuk penyebaran , ketik deployStorageAndVNet, lalu tekan [ENTER].

  3. Dari kotak daftar Pilih Grup Sumber Daya di bagian atas, pilih Buat Grup Sumber Daya baru.

  4. Masukkan exampleRG sebagai nama grup sumber daya, lalu tekan [ENTER].

  5. Pilih lokasi untuk grup sumber daya, pilih US Tengah atau lokasi pilihan Anda, lalu tekan [ENTER].

  6. Dari Pilih file parameter, pilih Tidak Ada.

    Screenshot of Select parameter file.

Pembuatan sumber daya memerlukan waktu beberapa menit. Untuk informasi selengkapnya, lihat Menyebarkan file Bicep dengan Visual Studio Code.

Anda juga dapat menyebarkan file Bicep dengan menggunakan Azure CLI atau Azure PowerShell:

az group create --name exampleRG --location eastus

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

Setelah penyebaran selesai, Anda akan melihat pesan yang menunjukkan penyebaran berhasil.

Membersihkan sumber daya

Saat sumber daya Azure tidak lagi diperlukan, gunakan modul Azure CLI atau Azure PowerShell untuk menghapus grup sumber daya mulai cepat.

az group delete --name exampleRG

Langkah berikutnya