我想在 Azure 上开发和托管我的投资组合,因为借助 MSP 计划,我每个月都有免费资金。
我的投资组合将由三项服务组成:
- 使用 React 的前端应用程序
- 使用 Asp.Net Core 的后端应用程序
- 用于存储文章和项目的数据库
一个重要的要求是 CI/CD:我需要能够在修改我的 github repo 的主分支时触发自动部署(例如,当我将分支合并到主分支时)。
此外,性能在这里并不是很重要,我没有在这里托管 Facebook,哈哈。
我的问题是:
- 我应该对这两个应用程序都使用容器吗?
- 我听说过 Azure 容器实例和 Azure 应用服务,它们能提供任何帮助吗?
答案1
好的,第一个选择是您希望如何打包您的应用程序,容器还是非容器。使用容器可能会使您的应用程序的开发和部署变得更容易,但如果您没有使用容器的经验,那么这将是一个陡峭的学习曲线。
如果您决定使用容器,那么您在 Azure 中基本上有 3 个选项:
- Azure Web Apps-用于托管 Web 应用程序的平台即服务,支持运行容器
- Azure 容器实例 - 容器即服务,您只需请求创建并运行一个容器即可
- Azure Kubernetes 服务 - Kuberenetes 集群即服务
听起来你不需要 Kubernetes 提供的功能,所以我会避免它带来的额外复杂性。Azure 容器实例可以满足你的需求,但它们实际上是为处理突发工作负载而设计的,而不是全天候服务,因此定价可能不是你想要的。最简单的选择可能是考虑使用 Web 应用。你可以运行容器而不必担心底层基础设施,而且它确实支持多容器工作负载 -https://docs.microsoft.com/en-us/azure/app-service/containers/tutorial-multi-container-app
如果您不想采用容器路线,那么您正在寻找更传统的托管服务。这会将您限制在:1. Azure Web 应用程序(无容器)2. Azure VM Azure VM 路线需要您自己配置和管理,因此并不理想。同样,我可能会考虑 Web 应用程序。
我没有提到数据库,我强烈建议您将 Azure 数据库作为服务产品来看看,无论是 SQL、MYSQL、PostgreSQL 等。我不建议在容器中运行数据库。