你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
快速入门:使用 Bicep 部署 Azure SignalR 服务
本快速入门介绍如何使用 Bicep 通过 Azure CLI 或 PowerShell 创建 Azure SignalR 服务。
Bicep 是一种特定于域的语言 (DSL),使用声明性语法来部署 Azure 资源。 它提供简明的语法、可靠的类型安全性以及对代码重用的支持。 Bicep 会针对你的 Azure 基础结构即代码解决方案提供最佳创作体验。
具有活动订阅的 Azure 帐户。 免费创建一个。
本快速入门中使用的 Bicep 文件来自 Azure 快速入门模板。
@description('The globally unique name of the SignalR resource to create.')
param name string = uniqueString(resourceGroup().id)
@description('Location for the SignalR resource.')
param location string = resourceGroup().location
@description('The pricing tier of the SignalR resource.')
@allowed([
'Free_F1'
'Standard_S1'
'Premium_P1'
])
param pricingTier string = 'Standard_S1'
@description('The number of SignalR Unit.')
@allowed([
1
2
5
10
20
50
100
])
param capacity int = 1
@description('Visit https://github.com/Azure/azure-signalr/blob/dev/docs/faq.md#service-mode to understand SignalR Service Mode.')
@allowed([
'Default'
'Serverless'
'Classic'
])
param serviceMode string = 'Default'
param enableConnectivityLogs bool = true
param enableMessagingLogs bool = true
param enableLiveTrace bool = true
@description('Set the list of origins that should be allowed to make cross-origin calls.')
param allowedOrigins array = [
'*'
]
resource signalR 'Microsoft.SignalRService/signalR@2022-02-01' = {
name: name
location: location
sku: {
capacity: capacity
name: pricingTier
}
kind: 'SignalR'
identity: {
type: 'SystemAssigned'
}
properties: {
tls: {
clientCertEnabled: false
}
features: [
{
flag: 'ServiceMode'
value: serviceMode
}
{
flag: 'EnableConnectivityLogs'
value: string(enableConnectivityLogs)
}
{
flag: 'EnableMessagingLogs'
value: string(enableMessagingLogs)
}
{
flag: 'EnableLiveTrace'
value: string(enableLiveTrace)
}
]
cors: {
allowedOrigins: allowedOrigins
}
networkACLs: {
defaultAction: 'Deny'
publicNetwork: {
allow: [
'ClientConnection'
]
}
privateEndpoints: [
{
name: 'mySignalRService.1fa229cd-bf3f-47f0-8c49-afb36723997e'
allow: [
'ServerConnection'
]
}
]
}
upstream: {
templates: [
{
categoryPattern: '*'
eventPattern: 'connect,disconnect'
hubPattern: '*'
urlTemplate: 'https://example.com/chat/api/connect'
}
]
}
}
}
Bicep 文件定义了一个 Azure 资源:
将该 Bicep 文件另存为本地计算机上的 main.bicep。
使用 Azure CLI 或 Azure PowerShell 来部署该 Bicep 文件。
az group create --name exampleRG --location eastus
az deployment group create --resource-group exampleRG --template-file main.bicep
New-AzResourceGroup -Name exampleRG -Location eastus
New-AzResourceGroupDeployment -ResourceGroupName exampleRG -TemplateFile ./main.bicep
部署完成后,应会看到一条指出部署成功的消息。
使用 Azure 门户、Azure CLI 或 Azure PowerShell 列出资源组中已部署的资源。
az resource list --resource-group exampleRG
Get-AzResource -ResourceGroupName exampleRG
如果不再需要资源组及其资源,请使用 Azure 门户、Azure CLI 或 Azure PowerShell 将其删除。
az group delete --name exampleRG
Remove-AzResourceGroup -Name exampleRG
有关引导你使用 Visual Studio Code 完成 Bicep 文件创建过程的分步教程,请参阅: