你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
注释
Azure AI 搜索可通过Azure门户、REST API 和Azure SDK获取。 它还支撑着 Foundry IQ——这一托管知识层可将企业内容转化为可复用、具有权限感知能力的知识库,供 Microsoft Foundry 门户中的代理使用。
使用Azure开发人员 CLI (azd) 将启用搜索的网站部署到Azure 容器应用。 此部署包括 React 客户端、.NET API、Azure AI 搜索、托管标识和支持Azure资源。
部署使用托管标识作为Azure AI 搜索的默认身份验证方法。 可以选择在部署之前设置为USE_KEYLESS_AUTHfalse基于密钥的身份验证。
登录到 Azure
在Visual Studio Code中,在存储库根目录中打开终端,例如
azure-search-static-web-app。使用
azd登录到Azure。azd auth login如果浏览器提示,请使用用于本教程的 Azure 帐户完成登录流。
创建 azd 环境
创建
azd环境。 替换为YOUR-ENVIRONMENT-NAME标识本教程部署的短名称。azd env new YOUR-ENVIRONMENT-NAME
(可选)配置基于密钥的身份验证
默认身份验证方法是托管标识,因此大多数环境都可以跳过本部分。 仅当环境需要 API 密钥时,才完成本部分。
将 USE_KEYLESS_AUTH 设置为 false。
azd env set USE_KEYLESS_AUTH false
如果未设置 USE_KEYLESS_AUTH,部署将使用托管标识。 Bicep基础结构授予容器应用标识对Azure AI 搜索数据平面的访问权限。
使用 azd up 进行部署
从存储库根路径,运行
azd up。azd up出现提示时,选择资源的Azure订阅和位置。
等待
azd预配基础结构、生成容器、推送映像并将服务部署到Azure 容器应用。在部署后查看输出。 输出包括用于Azure 容器应用部署的客户端和服务器完全限定的域名(FQDN)。
AZURE_CLIENT_URL: <client-container-app-fqdn> AZURE_SERVER_URL: <server-container-app-fqdn> SEARCH_SERVICE_NAME: <search-service-name>AZURE_CLIENT_URL使用该值打开网站。 客户端应用通过部署期间配置的终结点调用服务器应用。该部署还创建了Azure AI 搜索服务,并通过示例存储库中的挂钩自动
postprovision加载good-books索引。
在容器应用网站中使用搜索
从浏览器中的
azd up输出中打开客户端 FQDN。在网站搜索栏中,输入搜索查询,例如
code。 自动完成功能建议匹配的书名。选择一个建议,或继续输入自己的查询。 完成搜索查询后,选择 Enter 。
查看结果,然后选择一本书以查看更多详细信息。
Troubleshooting
如果 Web 应用无法部署或工作,请使用以下列表来确定并修复问题:
已完成了
azd up吗?azd up查看第一个失败的预配、生成或部署步骤的输出。 如果在预配期间部署停止,请检查订阅权限和所选区域。 如果在容器生成或部署步骤期间部署停止,请在修复报告的问题后重新运行azd up。是否可以打开客户端终结点?
从输出中
AZURE_CLIENT_URLazd up打开值。 如果页面未加载,请转到Azure门户,打开客户端容器应用并查看其修订状态和日志。客户端是否可以调用服务器终结点?
打开浏览器开发人员工具并查看来自客户端应用的网络调用。 如果对 API 的调用失败,请确认服务器容器应用正在运行,并且客户端应用在部署期间收到了服务器 FQDN。
服务器是否可以Azure AI 搜索查询?
如果搜索返回错误,请查看服务器容器应用日志。 对于托管标识,请确认该标识Azure AI 搜索数据平面访问。 对于基于密钥的身份验证,请确认在部署之前已设置为该
USE_KEYLESS_AUTHfalse设置,并且生成的容器环境包含搜索服务配置。
清理资源
用于azd down --purge删除本教程创建的Azure资源。 该 --purge 标志永久删除支持软删除的资源,而不是将其保留期保留为可恢复状态。 如果稍后重新部署本教程,清除将避免命名冲突。
从存储库根目录运行清理命令。
azd down --purge查看列出的资源
azd。出现提示时,确认删除。
如果在部署外部azd创建了Azure AI 搜索服务,请转到Azure门户中的搜索服务,然后选择页面顶部的“删除”。