azure - 有关如何使用 ARM 为 Azure 中的无服务器应用程序设置持续交付管道的示例
问题描述
来自 Firebase,使用身份验证、文件存储、数据库、云功能和托管设置整个无服务器应用程序非常简单,我们目前正在研究如何使用 Azure 实现类似的功能。在阅读了一些文档和研究示例之后,我找到了独立设置这些组件的解决方案,但没有真正具体的如何组合管理它们。
我的主要问题是:
使用暂存的连续部署:当我配置了具有功能、数据库、身份验证等的无服务器应用程序时,如何在 Azure 中进行正确的暂存?在 firebase 中有一个 json 文件定义我的后端,我可以将它部署到我想要的 firebase 项目(例如 myapp-dev、myapp-test、myapp-prod)。Azure中有类似的东西吗?对于 webapps,我找到了“插槽”,但对于 DB、存储、API 网关等 - 我如何在 Azure 中做到这一点?我想应该使用 Azure Pipelines,但是是否有任何适当的文档或示例说明如何使用它来处理无服务器应用程序的所有组件?
Config-As-Code:Azure 中的大多数文档/教程都是从在 Azure 门户 UI 或 Visual Studio(代码)中进行完整配置开始的。作为一个团队,我们希望将所有配置都放在一个 git repo 中,并从一开始就从那里维护它。我猜 Azure 资源管理器 (ARM) 就是为了这个?如果是这样 - 使用 ARM 提升无服务器项目的推荐方法是什么?
旁注:我们使用 Node.js 作为后端的函数。所以没有 .NET 或 Java。
解决方案
不幸的是,您需要使用 ARM 模板自己构建它。您可以编写嵌套模板、模块和扩展、依赖项、配置等。
您有时可以通过组合快速启动库中的各种解决方案和部署来开始:
- https://azure.microsoft.com/en-au/resources/templates/
- https://github.com/Azure/azure-quickstart-templates
对于更复杂的部署,我将 Sitecore ARM 模板分开,纯粹是为了部署结构。
您还可以在 Azure 门户中手动创建资源,然后在部署之前单击“自动化选项”以获取所需的 JSON。
虽然开箱即用,但 Azure 严重缺乏基于解决方案的部署。
推荐阅读
- firebase - Firebase Google 以身份验证中的用户身份登录
- java - 我在 Windows 上安装了 JDK 和 JRE 时如何运行 Java 代码?
- html - CSS媒体查询不着色文本
- python - 变换频谱以消除正弦扫描失真
- python - 如何使用 Tensorboard 通过 Keras 功能 API 创建活动直方图
- python - 在 AWS Lambda 中使用 boto3 ThreadPoolExecutor 并行检索 S3 对象
- bash - Bash 命令适用于 Mac OS,但不适用于 Ubuntu 20.4
- c++ - How to populate and edit a std::array of maps
- python - 奇点容器中从来没有python?
- python - 比较 2 个数据框中每列有多少不同的值