创建用于连接到 Azure Cosmos DB 的 Azure Function

此 Azure Functions 示例脚本先创建一个函数应用,然后将该函数连接到 Azure Cosmos DB 数据库。 创建的应用设置(包含连接)可以与 Azure Cosmos DB 触发器或绑定配合使用。

如果没有 Azure 订阅,可在开始前创建一个试用帐户

如果在本地使用 CLI,请确保运行 Azure CLI 2.0 或更高版本。 若要查找版本,请运行 az --version。 如需进行安装或升级,请参阅安装 Azure CLI

示例脚本

此示例创建 Azure Function app,并将 Cosmos DB 终结点和访问密钥添加到应用设置。

#!/bin/bash

# create a resource group with location
az group create `
  --name myResourceGroup `
  --location chinanorth

# create a storage account 
az storage account create `
  --name funccosmosdbstore `
  --location chinanorth `
  --resource-group myResourceGroup `
  --sku Standard_LRS

# create an app service plan
az appservice plan create `
  --name myappserviceplan `
  --resource-group myResourceGroup `
  --location chinanorth

# create a new function app, assign it to the resource group you have just created
az functionapp create `
  --name myfunccosmosdb `
  --resource-group myResourceGroup `
  --storage-account funccosmosdbstore `
  --plan myappserviceplan

# create cosmosdb database, name must be lowercase.
az cosmosdb create `
  --name myfunccosmosdb `
  --resource-group myResourceGroup

# Retrieve cosmosdb connection string
$endpoint=az cosmosdb show --name myfunccosmosdb --resource-group myResourceGroup --query documentEndpoint --output tsv

$key=az cosmosdb list-keys --name myfunccosmosdb --resource-group myResourceGroup --query primaryMasterKey --output tsv

# configure function app settings to use cosmosdb connection string
az functionapp config appsettings set `
  --name myfunccosmosdb `
  --resource-group myResourceGroup `
  --setting CosmosDB_Endpoint=$endpoint CosmosDB_Key=$key

清理部署

运行示例脚本后,可以使用以下命令删除资源组以及与其关联的所有资源。

az group delete --name myResourceGroup

脚本说明

此脚本使用以下命令:表中的每条命令均链接到特定于命令的文档。

命令 注释
az group create 使用相关位置创建资源组
az storage accounts create 创建存储帐户
az functionapp create
az cosmosdb create 创建 Azure Cosmos DB 数据库。

后续步骤

有关 Azure CLI 的详细信息,请参阅 Azure CLI 文档

可以在 Azure Functions 文档中找到其他 Azure Functions CLI 脚本示例。