Azure

Azure 微服務部署

  • March 28, 2020

我想在 Azure 上開發和託管我的投資組合,因為由於 MSP 計劃,我每個月都有免費資金。

我的投資組合將由 3 項服務組成:

  • 使用 React 的前端應用程序
  • 使用 Asp.Net Core 的後端應用程序
  • 用於儲存文章和項目的數據庫

一個重要的要求是 CI/CD:我需要能夠在修改我的 github repo 的 master 分支時觸發自動部署(例如,當我將一個分支合併到 master 時)。

另外,性能在這裡並不重要,我不是在這里托管 Facebook 哈哈。

我的問題是:

  • 我應該為這兩個應用程序使用容器嗎?
  • 我聽說過 Azure Container Instances 和 Azure App Service,在這裡有什麼幫助嗎?

好的,第一個選擇是您希望如何打包您的應用程序,容器或非容器。使用容器可能會使您的應用程序的開發和部署更容易,但如果您沒有使用容器的經驗,那麼這將是一個陡峭的學習曲線。

如果您決定使用容器,那麼您在 Azure 中基本上有 3 個選項:

  1. Azure Web 應用程序 - 平台即服務託管 Web 應用程序,它支持執行容器
  2. Azure 容器實例 - 容器即服務,您可以在其中請求為您創建和執行容器
  3. 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 等。我不建議在容器中執行數據庫。

引用自:https://serverfault.com/questions/1008249