Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Artikel werden die Befehle beschrieben, die Sie in der Bicep-Befehlszeilenschnittstelle verwenden können. Sie können diese Befehle mithilfe der Azure CLI oder durch direktes Aufrufen von Bicep CLI-Befehlen ausführen. Jede Methode erfordert einen unterschiedlichen Installationsprozess. Weitere Informationen zu Installationen finden Sie unter Azure CLI und Azure PowerShell.
Dieser Leitfaden zeigt, wie Sie die Befehle in der Azure CLI ausführen. Wenn Sie Befehle in der Azure CLI ausführen, starten Sie sie mit az. Wenn Sie die Azure CLI nicht verwenden, führen Sie die Befehle ohne az zu Beginn der einzelnen Befehle aus. Beispielsweise wird az bicep build zu bicep build, und az bicep version wird zu bicep --version.
build
Mit dem build Befehl wird eine Bicep-Datei in eine JSON-Vorlage für Azure Resource Manager (ARM-Vorlage) konvertiert. In der Regel müssen Sie diesen Befehl nicht ausführen, da er bei der Bereitstellung einer Bicep-Datei automatisch ausgeführt wird. Führen Sie sie manuell aus, wenn Sie die JSON ARM-Vorlage anzeigen möchten, die aus Ihrer Bicep-Datei erstellt wurde.
Die Verwendung eines der folgenden Bicep-Features aktiviert automatisch die Codegenerierung mit der Sprachversion 2.0:
- Benutzerdefinierte Typen
- Benutzerdefinierte Funktionen
- Importe zur Kompilierungszeit
- Experimentelle Features
Im folgenden Beispiel wird eine Bicep-Datei mit dem Namen main.bicep in eine ARM-Vorlage mit dem Namen main.json konvertiert. Die neue Datei wird im selben Verzeichnis wie die Bicep-Datei erstellt:
Im nächsten Beispiel wird main.json in einem anderen Verzeichnis gespeichert:
Im nächsten Beispiel wird der Name und speicherort der zu erstellenden Datei angegeben:
Verwenden Sie zum Ausgeben der Datei in stdout Folgendes:
Wenn Ihre Bicep-Datei ein Modul enthält, das auf eine externe Registrierung verweist, ruft der build Befehl automatisch auf restore. Der restore Befehl ruft die Datei aus der Registrierung ab und speichert sie im lokalen Cache.
Hinweis
Der restore Befehl aktualisiert den Cache nicht. Weitere Informationen finden Sie unterWiederherstellen.
Verwenden Sie die Option --no-restore, um „restore“ nicht automatisch aufzurufen:
bicep build --no-restore <bicep-file>
Um die --no-restore Option zu verwenden, benötigen Sie Bicep CLI , Version 0.4.X oder höher.
Der Buildprozess mit der Option --no-restore ist nicht erfolgreich, wenn eines der externen Module noch nicht zwischengespeichert wurde:
The module with reference "br:exampleregistry.azurecr.io/bicep/modules/storage:v1" hasn't been restored.
Wenn dieser Fehler angezeigt wird, führen Sie entweder den build Befehl ohne Schalter --no-restore aus, oder führen Sie zuerst aus bicep restore .
build-params
Der build-params Befehl erstellt eine .bicepparam Datei in einer JSON-Parameterdatei:
Mit diesem Befehl wird eine params.bicepparam-Parameterdatei in eine params.json-JSON-Parameterdatei konvertiert.
decompile
Der decompile Befehl konvertiert eine JSON ARM-Vorlage in eine Bicep-Datei:
Der Befehl erstellt im gleichen Verzeichnis, in dem sich auch main.json befindet, eine Datei namens main.bicep. Wenn sich in diesem Verzeichnis bereits eine Datei namens main.bicep befindet, verwenden Sie die Option --force, um die vorhandene Bicep-Datei zu überschreiben.
Weitere Informationen zur Verwendung dieses Befehls finden Sie unter Decompile JSON ARM-Vorlage zu Bicep.
dekompilieren-params
Der decompile-params Befehl dekompiliert eine JSON-Parameterdatei in eine .bicepparam Parameterdatei.
bicep decompile-params azuredeploy.parameters.json --bicep-file ./dir/main.bicep
Dieser Befehl dekompiliert eine azuredeploy.parameters.json-Parameterdatei in eine Datei "azuredeploy.parameters.bicepparam ".
--bicep-file Gibt den Pfad zur Bicep-Datei (relativ zur Datei) an, auf die .bicepparam in der using Deklaration verwiesen wird.
format
Der format Befehl formatiert eine Bicep-Datei so, dass sie den empfohlenen Formatvorlagenkonventionen folgt. Stellen Sie sich dies wie einen "Codeformatierer" oder "hübscher" für Ihre Bicep-Dateien vor. Er hat dieselbe Funktion wie die Verknüpfung SHIFT+ALT+F in Visual Studio Code.
generate-params
Mit dem Befehl „generate-params“ wird die „.parameters.json“-Datei aus der vorhandenen Bicep-Datei erstellt. Sie wird aktualisiert, sofern die Parameterdatei vorhanden ist.
bicep generate-params main.bicep --output-format bicepparam --include-params all
Mit diesem Befehl wird eine Bicep-Parameterdatei namens "main.bicepparam" erstellt. Die Parameterdatei enthält alle Parameter in der Bicep-Datei, ob mit Standardwerten konfiguriert oder nicht.
Mit diesem Befehl wird eine Parameterdatei namens main.parameters.json erstellt. Die Parameterdatei enthält nur die Parameter ohne Standardwerte, die in der Bicep-Datei konfiguriert sind.
Installieren
Der install Befehl fügt der lokalen Umgebung die Bicep CLI hinzu und ist nur über die Azure CLI verfügbar. Weitere Informationen finden Sie unter Installieren von Bicep-Tools.
Verwenden Sie zur Installation der aktuellen Version Folgendes:
So installieren Sie eine bestimmte Version
jsonrpc
Mit dem jsonrpc Befehl wird die Bicep CLI mit einer JSON-RPC-Schnittstelle ausgeführt, sodass eine programmgesteuerte Interaktion mit einer strukturierten Ausgabe möglich ist und Kaltstartverzögerungen beim Kompilieren mehrerer Dateien vermieden werden. Dieses Setup unterstützt auch das Erstellen von Bibliotheken für die programmgesteuerte Interaktion mit Bicep-Dateien in non-.NET Sprachen.
Das Drahtformat für das Senden und Empfangen von Eingaben/Ausgaben ist durch Kopfzeilen getrennt, wobei die folgende Struktur verwendet wird, wobei \r Wagenrücklauf- und \n Zeilenvorschubzeichen dargestellt werden:
Content-Length: <length>\r\n\r\n<message>\r\n\r\n
-
<length>ist die Länge der<message>Zeichenfolge, einschließlich des nachgestellten\r\n\r\n. -
<message>ist die unformatierte JSON-Nachricht.
Zum Beispiel:
Content-Length: 72\r\n\r\n{"jsonrpc": "2.0", "id": 0, "method": "bicep/version", "params": {}}\r\n\r\n
Die folgenden Methoden stehen über die JSON-RPC-Schnittstelle zur Verfügung:
bicep/format
Formatiert eine Bicep-Datei.
Die Anforderung:
{ "jsonrpc": "2.0", "id": 1, "method": "bicep/format", "params": { "path": "/path/to/file.bicep" } }Antwort:
{ "jsonrpc": "2.0", "id": 1, "result": { "success": true, "diagnostics": [], "contents": "param foo string\n\nresource storage 'Microsoft.Storage/storageAccounts@2025-01-01' = {\n name: 'mystorageaccount'\n location: 'East US'\n}\n" } }Bei Erfolg
"success": truewird der Inhalt zurückgegeben, der die formatierte Bicep-Quelle enthält. Beim Fehler mit"success": falsediagnosticsder Beschreibung des Fehlers.
bicep/version
Gibt die Version der Bicep CLI zurück.
Die Anforderung:
{ "jsonrpc": "2.0", "id": 0, "method": "bicep/version", "params": {} }Antwort:
{ "jsonrpc": "2.0", "id": 0, "result": { "version": "0.24.211" } }
Die verfügbaren Methoden und Anforderungs-/Antworttexte finden Sie unter ICliJsonRpcProtocol.cs.
Ein Beispiel für die Einrichtung einer JSONRPC-Verbindung und die programmgesteuerte Interaktion mit Bicep-Dateien mithilfe von Node finden Sie unter jsonrpc.test.ts.
Verwendung für benannte Rohre
Verwenden Sie die folgende Syntax, um eine Verbindung mit einer vorhandenen benannten Pipe als JSONRPC-Client herzustellen:
bicep jsonrpc --pipe <named_pipe>`
<named_pipe> ist eine vorhandene benannte Pipe, mit der der JSONRPC-Client verbunden werden soll.
So stellen Sie eine Verbindung mit einer benannten Pipe unter OSX/Linux her:
So stellen Sie eine Verbindung mit einer benannten Pipe unter Windows her:
bicep jsonrpc --pipe \\.\pipe\\bicep-81375a8084b474fa2eaedda1702a7aa40e2eaa24b3.sock`
Weitere Beispiele finden Sie unter C# und node.js.
Verwendung für TCP-Socket
Verwenden Sie die folgende Syntax, um eine Verbindung mit einem vorhandenen TCP-Socket als JSONRPC-Client herzustellen:
bicep jsonrpc --socket <tcp_socket>
<tcp_socket> ist die Socketnummer, mit der der JSONRPC-Client eine Verbindung herstellt.
So stellen Sie eine Verbindung mit einem TCP-Socket her:
Verwendung für Stdin und Stdout
Verwenden Sie die folgende Syntax und stdinstdout Meldungen, um die JSONRPC-Schnittstelle auszuführen:
lint
Der lint Befehl gibt die Fehler und Linter-Regelverletzungen einer Bicep-Datei zurück.
Wenn Ihre Bicep-Datei ein Modul enthält, das auf eine externe Registrierung verweist, ruft der lint Befehl automatisch auf restore. Der restore Befehl ruft die Datei aus der Registrierung ab und speichert sie im lokalen Cache.
Hinweis
Der restore Befehl aktualisiert den Cache nicht. Weitere Informationen finden Sie unterWiederherstellen.
Verwenden Sie die Option --no-restore, um „restore“ nicht automatisch aufzurufen:
Der lint-Prozess mit der Option --no-restore ist nicht erfolgreich, wenn eines der externen Module noch nicht zwischengespeichert wurde:
The module with reference "br:exampleregistry.azurecr.io/bicep/modules/storage:v1" has not been restored.
Wenn dieser Fehler auftritt, führen Sie entweder den Befehl lint ohne Option --no-restore aus, oder führen Sie zuerst bicep restore aus.
list-versions
Mit dem Befehl list-versions werden alle verfügbaren Versionen der Bicep-Befehlszeilenschnittstelle zurückgegeben. Verwenden Sie diesen Befehl, um zu sehen, ob Sie ein Upgrade durchführen oder eine neue Version installieren sollten. Dieser Befehl ist nur über die Azure CLI verfügbar.
Veröffentlichen
Der Befehl publish fügt einer Registrierung ein Modul hinzu. Die Azure-Containerregistrierung muss vorhanden sein, und das in der Registrierung veröffentlichte Konto muss über die richtigen Berechtigungen verfügen. Weitere Informationen zum Einrichten einer Modulregistrierung finden Sie unter Verwenden einer privaten Registrierung für Bicep-Module. Um ein Modul zu veröffentlichen, muss das Konto über das richtige Profil und die entsprechenden Berechtigungen für den Zugriff auf die Registrierung verfügen. Sie können die Rangfolge des Profils und der Anmeldeinformationen für die Authentifizierung bei der Registrierung in der Bicep-Konfigurationsdatei konfigurieren.
Nachdem Sie die Datei in der Registrierung veröffentlicht haben, können Sie in einem Modul darauf verweisen.
Sie müssen über Bicep CLI Version 0.14.X oder höher verfügen, um den publish Befehl und den --documentationUri/-d Parameter zu verwenden.
Verwenden Sie den folgenden Befehl, um ein Modul in einer Registrierung zu veröffentlichen:
bicep publish <bicep-file> --target br:<registry-name>.azurecr.io/<module-path>:<tag> --documentationUri <documentation-uri>
Zum Beispiel:
bicep publish storage.bicep --target br:exampleregistry.azurecr.io/bicep/modules/storage:v1 --documentationUri https://www.contoso.com/exampleregistry.html
Der publish Befehl erkennt in einer bicepconfig.json Datei angegebene Aliase nicht. Geben Sie den vollständigen Modulpfad an.
Warnung
Durch eine Veröffentlichung im selben Ziel wird das alte Modul überschrieben. Es wird empfohlen, die Versionsnummer beim Aktualisieren zu erhöhen.
Wiederherstellen
Wenn Ihre Bicep-Datei Module verwendet, die in einer Registrierung veröffentlicht werden, ruft der Befehl restore Kopien aller benötigten Module aus der Registrierung ab. Diese Kopien werden in einem lokalen Cache gespeichert. Eine Bicep-Datei kann nur erstellt werden, wenn die externen Dateien im lokalen Cache verfügbar sind. Normalerweise ist die Ausführung der Wiederherstellung nicht erforderlich, da sie automatisch vom Buildprozess ausgelöst wird.
Um externe Module im lokalen Cache wiederherzustellen, muss das Konto über das richtige Profil und die richtigen Berechtigungen für den Zugriff auf die Registrierung verfügen. Sie können die Rangfolge des Profils und der Anmeldeinformationen für die Authentifizierung bei der Registrierung in der Bicep-Konfigurationsdatei konfigurieren.
Um den restore Befehl zu verwenden, benötigen Sie Bicep CLI , Version 0.14.X oder höher.
Verwenden Sie den folgenden Befehl, um die externen Module für eine Datei manuell wiederherzustellen:
Die angegebene Bicep-Datei ist die Datei, die Sie bereitstellen möchten. Sie muss ein Modul enthalten, das mit einer Registrierung verknüpft ist. Sie können beispielsweise die folgende Datei wiederherstellen:
module stgModule 'br:exampleregistry.azurecr.io/bicep/modules/storage:v1' = {
name: 'storageDeploy'
params: {
storagePrefix: 'examplestg1'
}
}
Der lokale Cache befindet sich hier:
Unter Windows
%USERPROFILE%\.bicep\br\<registry-name>.azurecr.io\<module-path\<tag>Unter Linux
/home/<username>/.bicepUnter Mac
~/.bicep
Der restore-Befehl aktualisiert den Cache nicht, wenn ein Modul bereits zwischengespeichert ist. Um den Cache zu aktualisieren, können Sie entweder den Modulpfad aus dem Cache löschen oder den --force Schalter mit dem restore Befehl verwenden.
upgrade
Der Befehl upgrade aktualisiert Ihre installierte Version mit der neuesten Version. Dieser Befehl ist nur über die Azure CLI verfügbar.
Version
Der version Befehl gibt Ihre installierte Version zurück:
bicep --version
Wenn die Bicep CLI nicht installiert wurde, wird eine Fehlermeldung angezeigt, die besagt, dass die Bicep CLI nicht gefunden wurde.
Der Befehl zeigt die Versionsnummer an:
Bicep CLI version 0.29.45 (57a44c0230)
Nächste Schritte
Weitere Informationen zum Bereitstellen einer Bicep-Datei finden Sie unter: