首页 > 代码库 > 一键将Web应用发布到云-Azure Web App

一键将Web应用发布到云-Azure Web App

我们现在越来越多的传统应用,逐步向云端迁移,原先私有云的部署模式,逐步向云端PaaS IaaS转变。例如:

我们在云端Azure中申请VM虚拟机,将我们的Web应用部署到VM的IIS中,同时做云服务的高可用性集和NLB,实现Web应用的负载均衡和高可用性。

上面这是一种常见的云端部署模式(IaaS模式),我们需要不断运维这个VM、Web应用。有没有一种更简单的方式,一键将我们开发的Web应用直接发布到云上,自动实现负载均衡和高可用性。

答案是Azure的应用服务。

Azure 应用服务是一种全新独特的的云服务,使开发人员能够创建适用于任何平台和任何设备的 Web 应用和移动应用。 应用服务是一个集成的解决方案,简化重复编码工作、与企业和 SaaS 系统集成并自动执行业务流程,同时满足安全性、可靠性和可伸缩性的需要。

Azure的应用服务托管一下类型的应用:

  • Web 应用
  • 移动应用
  • API应用
  • Logic Apps

今天,我们重点研究Web应用,英文就是Web App。

Azure应用服务的 Web 应用 是一个完全托管的计算平台,适合用来托管网站和 Web 应用程序。

都支持哪些类型的Web 应用:.NET、Node.js、PHP、Python 和 Java实现的标准的Web应用和API。

Web应用有哪些功能:

  • 多种语言和框架 — 应用服务为 ASP.NET、Node.js、Java、PHP 和 Python 提供一流支持。 也可以在应用服务 VM 上运行 PowerShell 和其他脚本或可执行文件 。
  • DevOps 优化 — 使用 Visual Studio Team Services、GitHub 或 BitBucket 设置 持续集成和部署 。 通过 测试和过渡环境提升更新。 执行 A/B 测试。 在应用服务中,利用 Azure PowerShell 或跨平台命令行接口 (CLI) 来管理应用。
  • 具有高可用性的全局缩放 - 以手动或自动方式进行增大或扩大。 在 Microsoft 全球数据中心基础结构中的任意位置托管应用,并且应用服务 SLA 承诺高可用性
  • 到 SaaS 平台和本地数据的连接 - 从适用于企业系统(例如 SAP、Siebel 和 Oracle)的 50 多个 连接器 、SaaS 服务(例如 Salesforce 和 Office 365)以及 Internet 服务(例如 Facebook 和 Twitter)中进行选择。 使用混合连接和 Azure 虚拟网络访问本地数据。
  • 安全性和合规性 - 应用服务符合 ISO、SOC 和 PCI的要求。
  • 应用程序模板 - 从 Azure 应用商店 的大量应用程序模板列表中进行选择,使用向导安装流行的开源软件,例如 WordPress、Joomla 和 Drupal。
  • Visual Studio 集成 — Visual Studio 中的专用工具可简化创建、部署和调试工作。

 话不多说,直接show case...

1. 创建一个示例的MVC站点:FirstAzureWebApp

 技术分享

选择MVC项目模板,身份认证选择:不认证:No Authentication

技术分享

新建完成后,Debug 浏览,看到熟悉的ASP.NET示例界面

 

技术分享

2.  在Azure Portal中创建WebApp资源组,用于"盛放" ASP.NET MVC站点

技术分享

下载发布配置文件配置到指定的本机位置,这个发布配置文件主要用于一键将ASP.NET 站点发布到Azure时的身份认证

 

技术分享

3. 一键将ASP.NET MVC 站点Publish到Azure

技术分享

技术分享

选择Import 导入,这里导入的是上一步骤中下载的发布配置文件

技术分享

技术分享

验证连通性,是可以联通的,说明可以连接到Azure中,直接Publish,即可。

技术分享

技术分享

看输出:Web App was published successfullu http://teld***.chinacloudsites.cn

此时,Edge自动弹出了:熟悉的ASP.NET 示例界面

技术分享

很简单,微软的Azure还是非常方便快捷的,一键将ASP.NET MVC 站点发布到云端Azure上。

然后,我们继续,来点干货的。

我们将我们的应用发布到云端Azure后,如何配置管理,比如说:

.Net 版本、Php版本、Java版本、SSL、MIME、域名绑定、AppSettings、数据库连接串、主页等等。

放心,这些Azure全部提供:

技术分享

技术分享

技术分享

 

周国庆

2017/7/6

 

一键将Web应用发布到云-Azure Web App