这个项目能做什么
Topaz 是一个本地 Azure 模拟器,以单个自包含二进制文件或 distroless Docker 镜像的形式分发。它并非为每个服务单独运行模拟器,而是力求在单个进程中覆盖多种 Azure 服务,无需 Azure 订阅、服务主体或网络访问。它被定位为 Azure 版的 LocalStack。
安装方式包括 macOS 上的 Homebrew、Linux 上的安装脚本,以及 Docker 镜像(稳定版和 nightly 版)。Topaz CLI 随主机一同提供,健康检查命令可验证运行中的实例。
README 中列出的服务覆盖范围包括 Azure Storage(Blob、Table、Queue)、Key Vault、Service Bus、Container Registry、Event Hub、Virtual Machines、Virtual Network、App Configuration、Resource Manager、Microsoft Entra ID、App Service、Azure SQL、Cosmos DB、Disk、Load Balancer、Log Analytics、Application Insights、Public IP Address、Private Endpoints、Redis Cache、API Management 和 Event Grid。其中大多数标记为 Preview。所有这些服务均列出控制面支持;数据面支持则列出了一部分,例如 Storage、Key Vault、Service Bus、Container Registry、Event Hub、App Configuration、Cosmos DB、Log Analytics、Application Insights、Redis Cache、API Management 和 Event Grid。
除数据操作外,Topaz 还模拟控制面、使用 Bicep 和 ARM 模板进行 ARM 部署、Azure RBAC 角色分配和权限检查、Microsoft Entra ID 租户身份流程,以及管理组、订阅、资源组和资源 ID 所构成的 Azure 资源层级。其既定目标是让现有 Azure SDK 代码在指向 Topaz 后无需修改即可正常工作。
集成指南涵盖 Azure CLI、Azure PowerShell、适用于 .NET、Python、Java 和 JavaScript 的 Azure SDK、实验性 VS Code 扩展、使用 AzureRM 和 AzAPI provider 的 Terraform,以及带有 GitHub Actions 和 Azure DevOps 示例的 CI/CD 流水线。仓库中包含一个示例 GitHub Actions 工作流。
文档托管在 topaz.thecloudtheory.com,包含快速入门、服务指南、API 覆盖范围明细、对比和路线图。该项目还发布了一个 llms.txt 索引,旨在帮助 AI 助手和代理浏览文档。
README 指出,从 1.11 版本开始,Topaz 将转为双重许可,包括面向需要 SLA、优先修复或长期稳定性保证的团队的商业许可。社区支持通过 GitHub Discussions 和 issues 进行,并接受贡献。该项目声明所有状态均为本地保存,绝不发起出站调用,也不会在外部传输凭据或资源数据。
评论
0 人表达喜爱 · 满10人后显示 Deer Point
登录后参与讨论。