Bagikan melalui


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].

Cuplikan layar dari penambahan cuplikan bagi jaringan virtual.

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.

Cuplikan layar memperbarui versi API.

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).

Cuplikan layar dari penambahan jenis string pada 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.

Cuplikan layar dari penambahan dekorator pada 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 yang membantu orang yang menyebarkan file Bicep memahami nilai mana 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.

Cuplikan layar dari pemilihan akun penyimpanan bagi jenis sumber daya.

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

Cuplikan layar pilih versi API untuk jenis sumber daya.

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

Cuplikan layar dari penambahan properti yang diwajibkan.

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-05-01' = {
  name:
  location:
  sku: {
    name:
  }
  kind:
}

Anda hampir selesai. Cukup berikan nilai untuk properti tersebut.

Sekali 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.

Untuk menambahkan properti opsional bersama properti yang diperlukan, letakkan kursor di lokasi yang diinginkan dan tekan Ctrl+Space. IntelliSense menyarankan properti yang tidak digunakan seperti yang ditunjukkan pada cuplikan layar berikut:

Cuplikan layar menambahkan properti tambahan.

Setelah selesai, Anda memiliki:

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

resource virtualNetwork 'Microsoft.Network/virtualNetworks@2024-01-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@2023-05-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.

Cuplikan layar Visualizer Bicep.

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.

Cuplikan layar diagram Visualizer Bicep.

Menerapkan file Bicep

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

    Cuplikan layar Sebarkan file Bicep.

  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.

    Cuplikan layar Pilih file parameter.

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