Hızlı Başlangıç: Visual Studio ile Bicep dosyaları oluşturma

Bu hızlı başlangıç, Visual Studio ile Bicep dosyası oluşturma adımlarını gösterir. Bir depolama hesabı ve sanal ağ oluşturacaksınız. Ayrıca tür güvenliği, söz dizimi doğrulaması ve otomatik tamamlama sağlayarak Bicep uzantısının geliştirmeyi nasıl kolaylaştırdığı hakkında bilgi edineceksiniz.

Benzer yazma deneyimi Visual Studio Code'de de desteklenir. Bkz. Hızlı Başlangıç: Visual Studio Code ile Bicep dosyaları oluşturma.

Önkoşullar

Kaynak parçacığı ekleme

Visual Studio'yu başlatın ve main.bicep adlı yeni bir dosya oluşturun.

Bicep uzantısına sahip Visual Studio, önceden tanımlanmış kod parçacıkları sağlayarak geliştirmeyi basitleştirir. Bu hızlı başlangıçta, sanal ağ oluşturan bir kod parçacığı ekleyeceksiniz.

main.bicep'evnet yazın. Listeden res-vnet'i seçin ve [SEKME] veya [ENTER] tuşlarına basın.

Sanal ağ için kod parçacığı ekleme ekran görüntüsü.

İpucu

Visual Studio'da bu IntelliSense seçeneklerini görmüyorsanız , Önkoşullar bölümünde belirtildiği gibi Bicep uzantısını yüklediğinizden emin olun. Uzantıyı yüklediyseniz Bicep dil hizmetine Bicep dosyanızı açtıktan sonra başlaması için biraz zaman tanıyın. Genellikle hızlı bir şekilde başlar, ancak başlayana kadar IntelliSense seçenekleriniz olmaz.

Bicep dosyanız artık aşağıdaki kodu içerir:

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'
        }
      }
    ]
  }
}

Bu kod parçacığı, bir sanal ağ tanımlamak için ihtiyacınız olan tüm değerleri içerir. Ancak bu kodu gereksinimlerinizi karşılayacak şekilde değiştirebilirsiniz. Örneğin, name sanal ağ için harika bir ad değildir. özelliğini olarak nameexampleVnetdeğiştirin.

name: 'exampleVnet'

Konumun kırmızı kıvrımlı alt çizgiye sahip olduğunu göreceksiniz. Bu bir sorun olduğunu gösterir. İmlecinizi konumun üzerine getirin. Hata iletisi: - Geçerli bağlamda "konum" adı yok. Sonraki bölümde bir konum parametresi oluşturacağız.

Parametreler ekleme

Şimdi depolama hesabı adı ve konumu için iki parametre ekleyeceğiz. Dosyanın en üstüne şunları ekleyin:

param storageName

storageName'in ardından bir alan eklediğinizde IntelliSense'in parametresi için kullanılabilen veri türlerini sunduğuna dikkat edin. Dizeyi seçin.

Parametreye dize türü ekleme ekran görüntüsü.

Aşağıdaki parametreye sahipsiniz:

param storageName string

Bu parametre düzgün çalışır, ancak depolama hesaplarının adın uzunluğuyla ilgili sınırları vardır. Adın en az 3 karakteri ve en fazla 24 karakteri olmalıdır. Parametresine dekoratör ekleyerek bu gereksinimleri belirtebilirsiniz.

parametresinin üstüne bir çizgi ekleyin ve yazın @. Kullanılabilir dekoratörleri görürsünüz. Hem minLength hem de maxLength için dekoratörler olduğuna dikkat edin.

Parametreye dekoratör ekleme ekran görüntüsü.

Aşağıda gösterildiği gibi her iki dekoratörü de ekleyin ve karakter sınırlarını belirtin:

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

Parametresi için bir açıklama da ekleyebilirsiniz. Bicep dosyasını dağıtan kişilerin sağlayabilecekleri değeri anlamasına yardımcı olacak bilgiler ekleyin.

@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

Depolama hesabı adı parametresi kullanıma hazır.

Başka bir konum parametresi ekleyin:

param location string = resourceGroup().location

Kaynak ekle

Depolama hesabını tanımlamak için kod parçacığı kullanmak yerine intellisense kullanarak değerleri ayarlayacağız. IntelliSense bu adımı, değerleri el ile yazmaktan çok daha kolay hale getirir.

Kaynak tanımlamak için anahtar sözcüğünü resource kullanın. Sanal ağınızın altına kaynak örneğiDepolama yazın:

resource exampleStorage

exampleStorage , dağıttığınız kaynağın sembolik adıdır. Bicep dosyanızın diğer bölümlerinde kaynağa başvurmak için bu adı kullanabilirsiniz.

Simgesel adından sonra boşluk eklediğinizde, kaynak türlerinin listesi görüntülenir. Kullanılabilir seçenekler arasından seçene kadar depolama yazmaya devam edin.

Kaynak türü için depolama hesaplarını seçme işleminin ekran görüntüsü.

Microsoft.Storage/storageAccounts'ı seçtikten sonra size kullanılabilir API sürümleri sunulur. 2021-09-01 veya en son API sürümünü seçin. En son API sürümünü kullanmanızı öneririz.

Kaynak türü için API sürümünü seçme işleminin ekran görüntüsü.

Kaynak türü için tek tırnak işaretinden sonra ve alanını ekleyin = . Kaynağa özellik ekleme seçenekleri sunulur. Gerekli özellikler'i seçin.

Gerekli özellikleri ekleme ekran görüntüsü.

Bu seçenek, dağıtım için gereken kaynak türünün tüm özelliklerini ekler. Bu seçeneği seçtikten sonra depolama hesabınız aşağıdaki özelliklere sahiptir:

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

Kodda dört yer tutucu vardır. Bunların üzerinden geçmek ve değerleri girmek için [SEKME] kullanın. IntelliSense de size yardımcı olur. depolama hesabı için bir ad içeren parametre olan storageName olarak ayarlayınname. için locationolarak ayarlayın location. SKU adı ve türü eklenirken IntelliSense geçerli seçenekleri sunar.

İşiniz bittiğinde şunları elde etmiş olacaksınız:

@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@2019-11-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@2021-09-01' = {
  name: storageName
  location: location
  sku: {
    name: 'Standard_LRS'
  }
  kind: 'StorageV2'
}

Bicep söz dizimi hakkında daha fazla bilgi için bkz. Bicep yapısı.

Bicep dosyasını dağıtma

Bicep dosya dağıtımı henüz Visual Studio'dan yapılamıyor. Azure CLI veya Azure PowerShell kullanarak Bicep dosyasını dağıtabilirsiniz:

az group create --name exampleRG --location eastus

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

Dağıtım tamamlandığında, dağıtımın başarılı olduğunu belirten bir ileti görmeniz gerekir.

Kaynakları temizleme

Azure kaynakları artık gerekli olmadığında, hızlı başlangıç kaynak grubunu silmek için Azure CLI veya Azure PowerShell modülünü kullanın.

az group delete --name exampleRG

Sonraki adımlar