Azure
Azure 微服務部署
我想在 Azure 上開發和託管我的投資組合,因為由於 MSP 計劃,我每個月都有免費資金。
我的投資組合將由 3 項服務組成:
- 使用 React 的前端應用程序
- 使用 Asp.Net Core 的後端應用程序
- 用於儲存文章和項目的數據庫
一個重要的要求是 CI/CD:我需要能夠在修改我的 github repo 的 master 分支時觸發自動部署(例如,當我將一個分支合併到 master 時)。
另外,性能在這裡並不重要,我不是在這里托管 Facebook 哈哈。
我的問題是:
- 我應該為這兩個應用程序使用容器嗎?
- 我聽說過 Azure Container Instances 和 Azure App Service,在這裡有什麼幫助嗎?
好的,第一個選擇是您希望如何打包您的應用程序,容器或非容器。使用容器可能會使您的應用程序的開發和部署更容易,但如果您沒有使用容器的經驗,那麼這將是一個陡峭的學習曲線。
如果您決定使用容器,那麼您在 Azure 中基本上有 3 個選項:
- Azure Web 應用程序 - 平台即服務託管 Web 應用程序,它支持執行容器
- Azure 容器實例 - 容器即服務,您可以在其中請求為您創建和執行容器
- Azure Kubernetes 服務 - Kuberenetes 集群即服務
聽起來你不需要 Kubernetes 提供的功能,所以我會避免帶來額外的複雜性。Azure 容器實例可以為您工作,但它們實際上是為處理突發工作負載而設計的,而不是 24/7 服務,因此定價可能不是您想要的。最簡單的選擇可能是查看使用 Web 應用程序。您可以執行容器而無需擔心底層基礎架構,它確實支持多容器工作負載 - https://docs.microsoft.com/en-us/azure/app-service/containers/tutorial-multi-container-app
如果您不想走容器路線,那麼您正在尋找更傳統的託管服務。這將限制您: 1. Azure Web 應用程序(無容器) 2. Azure VM 的 Azure VM 路由需要自己配置和管理,所以不理想。同樣,我可能會查看網路應用程序。
我沒有提到數據庫,我強烈建議您查看 Azures 數據庫即服務產品,例如 SQL、MYSQL、PostgreSQL 等。我不建議在容器中執行數據庫。