Visual Studio Code を使用して Bicep ファイルを作成する
この記事では、Visual Studio Code を使用して Bicep ファイルを作成する方法を示します。
VS コードをインストールします。
Bicep の開発環境を設定するには、「Bicep ツールをインストールする」を参照してください。 これらの手順を完了すると、Visual Studio Code と Bicep 拡張機能を利用できるようになります。 また、最新の Azure CLI または最新の Azure PowerShell モジュールを用意します。
Bicep コマンド
Visual Studio Code には、いくつかの Bicep コマンドが付属しています。
VS Code で Bicep ファイルを開くか作成し、[表示] メニューを選択して、[コマンド パレット] を選択します。 F1 キーまたは Ctrl + Shift + P キーの組み合わせを使用して、コマンド パレットを表示することもできます。 Bicep コマンドを一覧表示するには、「Bicep」と入力します。
コマンドには、次が含まれます。
- ARM テンプレートをビルドする
- Bicep 構成ファイルを作成する
- Bicep への逆コンパイル
- Bicep ファイルをデプロイする
- パラメーター ファイルの生成
- Kubernetes マニフェストのインポート (プレビュー)
- [リソースの挿入]
- Bicep Visualizer を開く
- サイドに Bicep ビジュアライザーを開きます
- Bicep モジュールを復元する (強制)
Bicep ファイルを右クリックすると、コンテキスト メニューにも次のコマンドが表示されます:
JSON ファイルを右クリックした場合は、次のようになります。
ARM テンプレートをビルドする
build
コマンドは、Bicep ファイルを Azure Resource Manager テンプレート (ARM テンプレート) に変換します。 新しい JSON テンプレートは、同じファイル名の同じフォルダーに保存されます。 同じファイル名のファイルが存在する場合は、古いファイルが上書きされます。 詳しくは、「Bicep CLI コマンド」を参照してください。
Bicep 構成ファイルを作成する
Bicep 構成ファイル (bicepconfig.json) を使用すると、Bicep 開発エクスペリエンスをカスタマイズできます。 bicepconfig.json
を複数のディレクトリに追加できます。 ディレクトリ階層内で Bicep ファイルに最も近い構成ファイルが使用されます。 このコマンドを選択すると、フォルダーを選択するためのダイアログが拡張機能によって開きます。 既定のフォルダーに、Bicep ファイルが格納されます。 フォルダーに bicepconfig.json
ファイルが既に存在する場合は、既存のファイルを上書きすることができます。
Bicep 構成ファイルを作成するには:
- Visual Studio Code を開きます。
- [表示] メニューから [コマンド パレット] を選択し (または Ctrl/Cmd + Shift + P を押して)、[Bicep: Bicep 構成ファイルの作成] を選択します。
- ファイルの配置先となるディレクトリを選択します。
- 終わったら構成ファイルを保存します。
Bicep への逆コンパイル
このコマンドは、ARM JSON テンプレートを Bicep ファイルに逆コンパイルして、それを ARM JSON テンプレートと同じディレクトリに配置します。 新しいファイルは、.bicep という拡張子の同じファイル名になります。 同じファイル名の Bicep ファイルが既に同じフォルダーに存在する場合、既存のファイルを上書きするか、コピーを作成するかを確認するメッセージが Visual Studio Code から表示されます。
Bicep ファイルをデプロイする
Bicep ファイルは、Visual Studio Code から直接デプロイできます。 コマンド パレットまたはコンテキスト メニューから[ Bicep ファイルを配置 ]を選択します。 拡張機能により、Azure へのサインイン、サブスクリプションの選択、リソース グループの作成/選択、およびパラメーター値の入力が求められます。
注意
vscode 内の Bicep デプロイ コマンドは、認証に Azure アカウント拡張機能を使用します。 bicepconfig.json のクラウド プロファイルは使用されません。
パラメーター ファイルの生成
このコマンドは、Bicep ファイルと同じフォルダーにパラメーター ファイルを作成します。 Bicep パラメータ ファイルまたは JSON パラメータ ファイルの作成を選択できます。 新しい Bicep パラメータ ファイル名は <bicep-file-name>.bicepparam
、新しい JSON パラメータ ファイル名は <bicep-file-name>.parameters.json
です。
Kubernetes マニフェストのインポート (プレビュー)
このコマンドは、Kubernetes マニフェスト ファイルをインポートし、 Bicep モジュールを作成します。 詳細については、「Bicep 拡張機能 Kubernetes プロバイダー」および「クイック スタート: Bicep 拡張機能 Kubernetes プロバイダー (プレビュー) を使用して Azure アプリケーションを Azure Kubernetes Service (AKS) クラスターにデプロイする」を参照してください。
リソースの挿入
insert resource
コマンドを使用すると、既存のリソースのリソース ID を指定して、Bicep ファイルにリソース宣言が追加されます。 [リソースの挿入] を選択した後、コマンド パレットにリソース ID を入力します。 リソースが挿入されるまでしばらく時間がかかります。
リソース ID は、次のいずれかの方法で確認できます。
「Visual Studio Code 用の Azure Resource 拡張機能」を使用します。
Azure Portal を使用します。
Azure CLI または Azure PowerShell を使用する。
az resource list
テンプレートのエクスポートと同様に、プロセスによって使用できるリソースの作成が試行されます。 しかし、挿入されたテンプレートのほとんどは、Azure リソースのデプロイに使用する前に、いくつかの変更が必要です。
詳細については、「Bicep への ARM テンプレート JSON の逆コンパイル」を参照してください。
Bicep ビジュアライザー を開きます
このビジュアライザーには、Bicep ファイルに定義されているリソースと、リソースの依存関係情報が表示されます。 図は、Linux 仮想マシンの Bicep ファイルを視覚化しています。
ビジュアライザーを Bicep ファイルと並べて開くこともできます。
Bicep モジュールを復元する
レジストリに発行されたモジュールを Bicep ファイルで使用する場合、復元コマンドにより、必要なすべてのモジュールのコピーがレジストリから取得されます。 これらのコピーはローカル キャッシュに格納されます。 詳細については、「復元する」を参照してください。
ビュータイプのドキュメント
Visual Studio Code から、作業中のリソースの種類のテンプレート参照を開くことができます。 これを行うには、リソース のシンボリック名の上にカーソルを置き、[ ビュータイプのドキュメント] を選択します。
定義へ移動
参照ファイルの種類に関係なく、モジュールを定義する場合は、ローカル ファイル、モジュール レジストリ ファイル、テンプレート スペックのいずれであっても、モジュール パスを選択または強調表示して参照ファイルを開き、[F12] を押します。 参照されるファイルが Azure Verified Modules(AVM) の場合は、コンパイル済みの JSON または Bicep ファイルを切り替えることができます。 プライベート レジストリ モジュールの Bicep ファイルを開くには、WithSource
スイッチが有効になっているレジストリにモジュールが発行されていることを確認します。 詳細については、「レジストリにファイルを発行する」を参照してください。 プライベート モジュール レジストリから Bicep ファイルを開くには、Visual Studio Code Bicep 拡張機能バージョン 0.27.1 以降が必要です。
Bicep として貼り付ける
ARM テンプレートから Bicep ファイルに JSON スニペットを貼り付けることができます。 Visual Studio Code では、JSON が自動的に Bicep に逆コンパイルされます。 この機能は、Bicep 拡張機能バージョン 0.14.0 以降でのみ使用できます。 この機能は、既定で有効になっています。 この機能を無効にするには、「VS Code と Bicep 拡張」を参照してください。
この機能を使用すると、以下を貼り付けられます。
- 完全な ARM JSON テンプレート。
- 単一リソースまたは複数のリソース。
- オブジェクト、配列、文字列などの JSON 値。 二重引用符を含む文字列は、単一引用符に変換されます。
たとえば、次の Bicep ファイルから始めることができます。
@description('Storage Account type')
@allowed([
'Standard_LRS'
'Standard_GRS'
'Standard_ZRS'
'Premium_LRS'
])
param storageAccountsku string = 'Standard_LRS'
@description('Location for all resources.')
param location string = resourceGroup().location
var storageAccountName = '${uniqueString(resourceGroup().id)}storage'
resource storageAccount 'Microsoft.Storage/storageAccounts@2023-04-01' = {
name: storageAccountName
location: location
sku: {
name: storageAccountsku
}
kind: 'StorageV2'
tags: {
ObjectName: storageAccountName
}
properties: {}
}
output storageAccountName string = storageAccountName
次の JSON を貼り付けます。
{
"type": "Microsoft.Batch/batchAccounts",
"apiVersion": "2024-02-01",
"name": "[parameters('batchAccountName')]",
"location": "[parameters('location')]",
"tags": {
"ObjectName": "[parameters('batchAccountName')]"
},
"properties": {
"autoStorage": {
"storageAccountId": "[resourceId('Microsoft.Storage/storageAccounts', variables('storageAccountName'))]"
}
}
}
Visual Studio Code では、JSON が自動的に Bicep に変換されます。 また、batchAccountName
という名前のパラメーターを追加する必要があることに注意してください。
逆コンパイルは、Ctrl + Z キーを使用して元に戻すことができます。 元の JSON がファイルに表示されます。
トラブルシューティング
Problems
ペインには、Bicep ファイルのエラーと警告の要約が表示されます。
エラー/警告コードの一覧については、「Bicep のエラー/警告コード」をご覧ください。
次のステップ
クイックスタートを調べるには、「クイックスタート: Visual Studio Code を使用して Bicep ファイルを作成する」をご覧ください。