次の方法で共有


Visual Studio Code を使用して Bicep ファイルを作成する

この記事では、Visual Studio Code を使用して Bicep ファイルを作成する方法を示します。 Bicep MCP サーバーを使用するには、「 VS Code で Bicep MCP サーバーを使用する」を参照してください。

Visual Studio Code をインストールする

Bicep の開発環境を設定するには、「Bicep ツールをインストールする」を参照してください。 これらの手順を完了すると、Visual Studio CodeBicep 拡張機能がインストールされます。 また、最新の Azure CLI または最新の Azure PowerShell モジュールを用意します。

Bicep コマンド

Visual Studio Code には、いくつかの Bicep コマンドが付属しています。

Visual Studio Code で Bicep ファイルを開くか作成し、[表示] メニューを選択して、[コマンド パレット] を選択します。 F1 キーを押すか、Ctrl + Shift + P キーの組み合わせを押して、コマンド パレットを表示することもできます。 Bicep コマンドを一覧表示するには、「Bicep」と入力します。

コマンドパレットの Visual Studio Code Bicep コマンドのスクリーンショットです。

コマンドには、次が含まれます。

Bicep ファイルを右クリックすると、コンテキスト メニューにも次のコマンドが表示されます:

Visual Studio Code の Bicep コマンドのスクリーンショット (Bicep ファイルのコンテキスト メニュー)。

JSON ファイルを右クリックした場合は、次のように表示されます。

Visual Studio Code の Bicep コマンドのスクリーンショット (JSON ARM テンプレートのコンテキスト メニュー)。

この記事に記載されたコマンドの詳細については、「Bicep CLI コマンド」を参照してください。

Bicep コマンドに加えて、 Format DocumentsShift+Alt+F などの組み込みの VS Code コマンドを使用することもできます。

ARM テンプレートを作成するコマンド

build コマンドは、Bicep ファイルを JSON ARM テンプレートに変換します。 新しいテンプレートは、同じファイル名の同じフォルダーに保存されます。 同じファイル名のファイルが存在する場合は、古いファイルが上書きされます。 使用例と詳細については、「build」を参照してください。

パラメーター ファイルを作成するコマンド

build-params コマンドも、Bicep パラメーター ファイルJSON パラメーター ファイルに変換します。 新しいパラメーター ファイルは、同じファイル名の同じフォルダーに保存されます。 同じファイル名のファイルが存在する場合は、古いファイルが上書きされます。 例については、「build-params」を参照してください。

Bicep 構成ファイルを作成するコマンド

bicepconfig.json ファイルは、Bicep 開発エクスペリエンスをカスタマイズすることができる、Bicep 構成ファイルです。 bicepconfig.json を複数のディレクトリに追加することができます。その場合、ディレクトリ階層内で Bicep ファイルに最も近い構成ファイルが使用されます。 Visual Studio Code で [Bicep 構成ファイルの作成] を選択すると、拡張機能により、フォルダーを選択するためのダイアログが表示されます。 既定のフォルダーに、Bicep ファイルが格納されます。 フォルダーに bicepconfig.json ファイルが既に存在する場合は、既存のファイルを上書きすることができます。

Bicep 構成ファイルを作成するには:

  1. Visual Studio Code を開きます。
  2. [表示] メニューから [コマンド パレット] を選択し (または Ctrl/Cmd + Shift + P を押して)、[Bicep: Bicep 構成ファイルの作成] を選択します。
  3. ファイルの配置先となるディレクトリを選択します。
  4. 終わったら構成ファイルを保存します。

Bicep へ逆コンパイルするコマンド

decompile コマンドは、JSON ARM テンプレートを Bicep ファイルに逆コンパイルして、それを元の JSON ARM テンプレートと同じディレクトリに配置します。 新しいファイルは、.bicep 拡張子で同じファイル名になります。 同じファイル名の Bicep ファイルが既に同じフォルダーに存在する場合、既存のファイルを上書きするか、コピーを作成するかを確認するメッセージが Visual Studio Code から表示されます。 例については、「decompile」を参照してください。

Bicep ファイルをデプロイするコマンド

Bicep ファイルは、Visual Studio Code から直接デプロイできます。 コマンド パレットまたはコンテキスト メニューから[Bicep ファイルをデプロイ] を選択します。 拡張機能により、Azure portal へのサインイン、サブスクリプションの選択、リソース グループの作成または選択、パラメーター値の入力が求められます。

Visual Studio Code の Bicep deploy コマンドでは、認証を管理するために新しい組み込みの認証 API が使用されます。 bicepconfig.json のクラウド プロファイルは使用されません。 カスタム クラウドにサインインするには、[管理]>[設定]>[拡張機能]>[Microsoft アカウント]>[Microsoft Sovereign Cloud] を選択します。 現時点では、複数のサインイン アカウントはサポートされていません。

パラメーター ファイルを生成するコマンド

generate-params コマンドは、Bicep ファイルと同じフォルダーにパラメーター ファイルを作成します。 Bicep パラメータ ファイルを作成するか、JSON パラメータ ファイルを作成するかを選択できます。 新しい Bicep パラメータ ファイル名は <bicep-file-name>.bicepparam、新しい JSON パラメーター ファイル名は <bicep-file-name>.parameters.json になります。 例と詳細については、「generate-params」を参照してください。

AKS マニフェストをインポートするコマンド (プレビュー)

このコマンドは、AKS マニフェスト ファイルをインポートして、Bicep モジュールを作成します。 詳細については、「Bicep Kubernetes 拡張機能 (プレビュー)」および「クイック スタート: Bicep Kubernetes 拡張機能 (プレビュー) を使用して Azure Kubernetes Service (AKS) クラスターをデプロイする」を参照してください。

リソースを挿入するコマンド

このコマンドでは、既存のリソースのリソース ID を指定して、Bicep ファイルでリソースを宣言します。 Visual Studio Code で [リソースの挿入] を選択し、コマンド パレットにリソース ID を入力します。 リソースが挿入されるまでしばらく時間がかかります。

リソース ID を確認するには、次のいずれかの方法を使用します。


テンプレートのエクスポート プロセスと同様に、このプロセスでは使用可能なリソースの作成が試行されます。 ただし、挿入されたテンプレートのほとんどは、Azure リソースのデプロイに使用する前に、何らかの変更を加える必要があります。 詳細については、「ARM テンプレート JSON を Bicep に逆コンパイルする」を参照してください。

Bicep ビジュアライザーを開くコマンド

Bicep ビジュアライザーには、Bicep ファイルで定義されたリソースと、それらの間の依存関係が表示されます。 次の図は、Linux Virtual Machines 用の Bicep ファイルを視覚的に表したものです。

Visual Studio Code Bicep ビジュアライザー

Bicep ビジュアライザーを Bicep ファイルと並べて開くこともできます。

JSON を Bicep として貼り付けるコマンド

ARM テンプレートから Bicep ファイルに JSON スニペットを貼り付けることができます。 Visual Studio Code では、JSON が自動的に Bicep に逆コンパイルされます。 この機能は、Bicep 拡張機能バージョン 0.14.0 以降のみで利用可能で、既定で有効になっています。 この機能を無効にするには、「Visual Studio Code と Bicep 拡張機能」を参照してください。

この機能では、以下を貼り付けることができます。

  • 完全な JSON ARM テンプレート。
  • 単一または複数のリソース。
  • オブジェクト、配列、文字列などの 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@2025-06-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 がファイルに表示されます。

Bicep モジュールを復元するコマンド

レジストリに発行されたモジュールを Bicep ファイルで使用する場合、restore コマンドにより、必要なすべてのモジュールのコピーがレジストリから取得されます。 これらのコピーはローカル キャッシュに格納されます。 詳細と例については、「 復元」を参照してください。

デプロイ ウィンドウを表示するコマンド

デプロイ ウィンドウには、AZURE アカウントにアクセスして検証、デプロイ、What-if 操作を実行できる VS Code の対話型 UI が用意されており、エディターを離れることなく即座にフィードバックを提供します。

Visual Studio Code のデプロイ ウィンドウのスクリーンショット。

詳細については、「 展開ウィンドウ」 を参照してください。

Bicep MCP サーバー

Bicep MCP (モデル コンテキスト プロトコル) サーバーは、高品質の Bicep コードの生成に役立つツールを AI エージェントに提供します。 Bicep MCP サーバーは、Bicep Visual Studio Code 拡張機能バージョン 0.40.2 に自動的に含まれます。 Visual Studio Code で Bicep MCP サーバーを使用して Bicep 開発用の環境を設定するには、「 Bicep ツールのインストール」を参照してください。

Bicep MCP サーバーは、Bicep VSCode 拡張機能に自動的に含まれているため、拡張機能ビューの MCP SERVERS の下に表示されません。

Visual Studio Code での MCP サーバーの使用に関する一般的な情報については、「 VS Code での MCP サーバーの使用」を参照してください。

クイック スタートについては、「 クイック スタート: Visual Studio Code と Bicep MCP サーバーを使用して Bicep ファイルを作成する」を参照してください。

クイック修正候補を使用する

VS Code の電球は、クイック修正候補を表します。 これは、コード内の問題や改善の機会がエディターによって検出されたときに表示されます。 この電球をクリックすると、問題の解決やコードの改善に役立つアクションのメニューが表示されます。

Visual Studio Code のクイック修正候補のスクリーンショット。

抽出コマンドについては、「パラメーター、変数、型を抽出する」を参照してください。 [その他のアクション] では、デコレーターの追加が提案されます。

パラメーター、変数、型を抽出する

変数パラメーターユーザー定義のデータ型を抽出するには、コードの構造、保守の容易性、明確さを向上させるために、既存のコードからこれらのコンポーネントを分離して定義する必要があります。

次のスクリーンショットは、AKS クラスター リソースの定義を示しています。 identity などのプロパティに基づいて、パラメーター、変数、またはユーザー定義のデータ型を抽出することができます。 コードから identity 行を選択し、黄色の電球アイコンを選択します。 コンテキスト ウィンドウには、使用可能な抽出オプションが表示されます。

変数、パラメーター、型の抽出のスクリーンショット。

  • Extract variable: 新しい変数を作成します。変数名を更新するオプションも表示されます。

    変数を抽出するスクリーンショット。

  • Extract parameter of type (単純なデータ型): string、int などの単純なデータ型で新しいパラメーターを作成します。変数名を更新するオプションも表示されます。

    パラメーターを抽出するスクリーンショット。

  • Extract parameter of type (ユーザー定義のデータ型): ユーザー定義のデータ型で新しいパラメーターを作成します。パラメーター名を更新するオプションも表示されます。

    パラメーターの抽出と使用できる値のスクリーンショット。

    抽出後に、何らかのカスタマイズが必要になります。

  • Create user-defined type: 新しいユーザー定義型を作成します。型名を更新するオプションも表示されます。

    ユーザー定義データ型を抽出するスクリーンショット。

    他のオプションとは異なり、選択したコードは新しい型への参照で置換されません。 前の例では、identity の値はそのままで変わっていません。 新しい型を使用するには、それをコードに組み込む必要があります。

ドキュメントの表示オプション

Visual Studio Code から、作業中のリソースの種類のテンプレート参照を開くことができます。 これを行うには、リソース のシンボリック名の上にカーソルを置き、[ドキュメントの表示] を選択します。

Visual Studio Code に表示されている [ドキュメントの表示] オプションのスクリーンショット。

ファイルに移動

モジュールを定義する際には、参照されるファイルの種類 (ローカル ファイル、モジュール レジストリ ファイル、またはテンプレート スペック) に関係なく、モジュール パスを選択または強調表示し、[F12] キーを押すと、そのファイルを開くことができます。 参照されるファイルが Azure Verified Module (AVM) の場合は、コンパイル済みの JSON と Bicep ファイルとの間で切り替えることができます。 プライベート レジストリ モジュールの Bicep ファイルを開くには、そのモジュールが WithSource スイッチが有効な状態でレジストリに発行されていることを確認してください。 詳細については、「レジストリにファイルを発行する」を参照してください。 プライベート モジュール レジストリから Bicep ファイルを開くには、Visual Studio Code Bicep 拡張機能のバージョン 0.27.1 以降が必要です。

トラブルシューティング

Problems ウィンドウには、以下のように Bicep ファイル内のエラーと警告の要約が表示されます。

Visual Studio Code の [PROBLEMS] ウィンドウのスクリーンショット。

Bicep コア診断」に、エラーおよび警告のコードの一覧が示されています。

次のステップ

クイックスタート: Visual Studio Code を使用して Bicep ファイルを作成する」に進んで、この記事の情報を適用する方法のチュートリアルを確認します。