Virtual Studio 2015发布利器:通过IDE直接发布容器化ASP.NET 5 到云中

Docker容器化趋势目前已经进入了快速发展阶段,关于Docker容器数据中心级别大规模应用集群及编排管理,应用微服务化都是业界广泛讨论的议题;不过除了上述热点以外,对于容器化最为开发运维人员推崇的,莫过于DevOps开发测试场景的对应:开发,构建,运行,保证配置运行环境及打包代码转移运行的一致性!不过之前多数情况下,我们看到的Docker打包并非开发工具直接集成的,需要开发运维人员手工编写,现在已经开始逐渐过渡和改观,对.NET开发者而言Visual Studio 2015 Tools for Docker - August Preview目前在公开预览阶段,已经更新到了0.7 Beta版;目前通过这个工具开发者可以轻松的将开发的ASP.NET 5 Web或控制台应用代码构建并发布到运行在Azure公有云中的虚拟机容器中,在通过ASP.NET跨平台的前提下目前支持Linux或Windows两种内核虚拟机。当然本人设想的场景是发布到云中的测试环境,如果测试过程没有问题,之后就可以将同样的构建程序包和环境配置文件转交给运维人员进行生产部署。

这么令人兴奋的功能,还是让我们一起体验一下:

环境准备:

    • 企业版
    • 专业版
    • 社区版

(*目前只支持英文版本,这里要注意目前预览版还不支持多语言版,所以如果是中文版的VS 2015还是再耐心等等吧)

  • 预览阶段VS Tools for Docker还没有做好ASP.NET和Web工具依赖关系,本人就在测试中吃了这个亏,没有注意需要预装工具包,因此在VS 2015中无法选择在Azure上创建新的Docker虚拟机,参考了这篇文章才发现了问题所在。

扩展工具的主要功能:

  • 安装Docker 1.8.1 Windows命令行工具集,如果Windows本地没有安装的话VS 2015工具会帮助安装,借助Docker的工具VS 2015扩展工具才能实现对于Docker容器的管理和部署。
  • 自动生成Azure Docker虚拟机资源模板用于在Azure上创建内置Docker功能的Linux/Windows 虚拟机用于承载Web或控制台程序。
  • 在当前用户环境自动生成Docker TLS安全通信及管理证书用于远程管理Azure端托管的Docker虚拟机环境。
  • 打包应用程序并生成Dockerfile用于构建应用程序基础映像。

准备环境就绪以后,可以开始进行测试了;

1. 首先创建一个ASP.NET Web应用程序,

2. 接下来,选择ASP.NET预览版应用模板,此模板会通过NuGet下载项目所需引用的跨平台库DNX,打包配置工具NPM, Bower等,

(*注意此时不要勾选部署到Web App中)

3. 项目建好之后,我们就可以尝试发布了:)选择发布应用

4. 在扩展工具安装之后,我们可以此时看到Docker Container选项,当然这里我们要选择通过容器方式发布,选择它;

5. 接下来,如果我们在Azure上没有Docker虚拟机环境,我们可以选择创建新的Azure Docker虚拟机(这里可是坑了我很长时间,希望看了上面预装环境,大家不会碰到类似问题)

6. 这里可以根据实际Azure环境选择订阅,位置,映像文件(这里选择的是最新的Windows Server 2016 TP3的Windows内核容器环境),尺寸,虚拟机用户凭据等,注意如果之前没有在当前用户环境创建过证书文件,扩展工具内置的PowerShell脚本会检测到并帮助你创建用于Docker环境TLS管理的证书文件到该目录下,并且这样通过Docker工具或脚本连接资源时,就可以通过默认证书配置连接了。

(*注意,目前此功能只能支持国际版的Azure环境,对于国内Azure版本我们还需要耐心等待)

7. 我们选择完成之后,其实可以从当前Web工程中看到扩展工具为我们生成的构建Docker虚拟机资源组的配置文件*.json,及默认参数配置文件*.param.dev.json;另外还会生成证书文件创建及应用Docker虚拟机模板创建Docker虚拟机环境的脚本文件;

8. 开始创建虚拟机资源组,泡杯咖啡耐心等待,直到虚拟机创建成功等待我们部署我们的Web应用。

9. 我们可以通过PowerShell验证一下是否资源已经创建好了;

Switch-AzureMode -Name AzureResourceManager
Get-AzureResource -Name DemoAsp5Net -OutputObjectFormat New
Name              : demoasp5net
ResourceId        : /subscriptions/3cf430da-bda2-4739-b6c8-44092933335b/resourceGroups/demoasp5net/providers/Microsoft.
                    Compute/virtualMachines/demoasp5net
ResourceName      : demoasp5net
ResourceType      : Microsoft.Compute/virtualMachines
ResourceGroupName : demoasp5net
Location          : westus
SubscriptionId    : 3cf430da-bda2-4739-b6c8-44092933335b
Tags              : {System.Collections.Hashtable}

10. 接下来,我们可以在此虚拟机上部署我们的测试Web应用了,再次选择发布选项;此时如果Dockfile部分没有文件,没有关系,扩展工具会帮助我们创建用户创建基础Docker映像的Dockfile;点击Validate Connection确认此时已经可以连接到Azure上的Docker虚拟机环境;

11. 选择发布后,扩展工具会通过gulp/Grunt,DNU.CMD打包Web应用程序,并通过Dockfile和Docker命令行工具创建映像文件;之后通过映像文件创建容器并按照我们在上一步制定的映射端口映射容器到外部,测试中发现其实包括Azure外部的端点Endpoint映射也帮我们做好了,还真是事半功倍啊!

12. 全部部署完成之后,我们可以点击output中的应用URL访问网站并验证是否ASP.NET应用已经部署成功,

13. 此时如果愿意,也可以在测试机上连接Azure上的Docker环境并查看容器运行时环境:

行文至此,这个Docker集成工具就先到这里吧,希望对公有云,.NET跨平台以及容器应用有兴趣的朋友可以自行体验:)

时间: 2024-12-04 05:31:59

Virtual Studio 2015发布利器:通过IDE直接发布容器化ASP.NET 5 到云中的相关文章

有感 Visual Studio 2015 RTM 简介 - 八年后回归 Dot Net,终于迎来了 Mvc 时代,盼走了 Web 窗体时代

有感 Visual Studio 2015 RTM 简介 - 八年后回归 Dot Net,终于迎来了 Mvc 时代,盼走了 Web 窗体时代 太阳火神的美丽人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS.Android.Html5.Arduino.pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作. 关于

Visual Studio 2015 update 3各版本下载地址

Visual Studio 2015 update 3各版本下载地址 标签: VS2015update 3 2016-11-28 14:32 2899人阅读 评论(0) 收藏 举报  分类: other(50)  微软在06月27日发布了Visual Studio 2015 Update 3 .在MSDN中微软也提供下载,而且MSDN的Visual Studio 2015 Update 3与官方免费下载的文件是一致的,只是文件名不一样,除TFS除外. 官方下载:https://www.visua

Visual Studio 2015 开发 ASP.NET 5 有何变化?(转)

出处:http://www.cnblogs.com/xishuai/p/visual-studio-2015-preview-asp-net-5-change.html 本篇博文目录: ASP.NET 5 模版 ASP.NET 5 目录结构 前端管理工具 无编译开发 Microsoft Git Provider 智能感知和错误信息 Smart Unit Testing 等待发现... Visual Studio 2015 Preview 版本部分说明: ASP.NET 5 Preview run

用Visual Studio 2015成功编译、发布UMDF驱动到目标机(windows10 X86)!!

开发工具:Visual Studio 2015企业版 主      机:windows10 X64企业版,主机是安装了Visual Studio 2015的操作系统,主要进行驱动开发和调试. 目  标 机:windows10 X86企业版,目标机是安装和调试驱动的操作系统,和主机是分离的独立的操作系统. 虚  拟 机:VMWear Workstation 12 Pro 前提:我们已经成功安装了Visual Studio 2015以及WDK,而且更重要一点是一定要SDK版本和WDK版本保证一致,如

Visual Studio 2015官方汇总包括下载和视频

7月20日 23:30 Visual Studio 2015正式版正式发布,作为微软新一代开发利器,在全地球乃至全宇宙乃至全太阳系中最强大 且没有之一的IDE(上述描述来自微博用户评论)跨平台支持成为Visual Studio最新DNA.在智能移动端App开发,支持无论是面向何种智能设备,无论是支持Native应用,还是基于HTML5的混合应用,都可以借助Visual Studio的编码.调试.智能提示等强大功能,帮助程序猿快速开发.一起来认识一下Visual Studio 家族新面孔.    

使用Visual Studio 2015开发Android 程序

环境配置: 操作系统:win 7 64位 IDE:Visual Studio 2015 SDK:installer_r24.3.3-windows 安装前提: 编辑hosts文件(在附件可下载)因为安装过程中要联网更新和注册 安装完成VS之后直接新建android程序会提示: --------------------------- Microsoft Visual Studio --------------------------- 值不能为 null.参数名: path1 ----------

Visual Studio 2015和ASP.NET 5中可用的前端开发工具集

最近微软发布了一本白皮书,谈到了一些可以和Visual Studio 2015和ASP.NET 5配合使用的JS/前端Web开发工具(比如:函数库.任务执行器.框架等). 由于现在前端开发的生态系统在快速增长,也变得越来越复杂和庞大.所以,微软特意发布了这么一个白皮书来讲解一些可以集成到VS 2015用于ASP.NET 5开发的前端工具库.这些前端工具库,都能很好的被VS2015所支持,比如提供智能提示等内置特性. 每个涉及的工具库都给出了入门介绍.基本概念,以及在VS和ASP.NET中的用法.

Visual Studio 2015速递(1)——C#6.0新特性怎么用

对于IDE的争论这个话题,在开发部已经由来已久,甚至可以追溯到微软.NET技术发布之前,当时的主打产品是ActiveX控件,随着Borland Delphi的快速崛起,RAD势不可挡,迅速催生了很多经典的IDE,微软旗下最有名气的就是VC和VB了:此后.NET技术发布,Visual Studio迈进20XX时代,对于VS2002和VS2003我已经基本没有太深的印象了,仅仅留在记忆里的是这货要高效率,必须得安装一个叫Resharper的玩意,否则也就比记事本强那么一点点:随后微软发布了VS200

Visual Studio 2015正式发布

Windows 10 RTM正式版要7月29日发布,微软的另一个重磅软件Visual Studio 2015已经率先发布,今天如期放出了正式版本.Visual Studio 2015包括许多新功能和更新,如通用Windows应用开发工具.面向iOS.Android.Windows的跨平台移动开发工具(包括Xamarin.Apache Cordova.Unity).可移植C++库.适用于Android的本机活动C++模板等等,对Cordova,Xamarin , C++的跨平台支持都非常好.让你通