在docker中运行ASP.NET Core Web API应用程序(附AWS Windows Server 2016 widt Container实战案例)
环境准备
1、亚马逊EC2 Windows Server 2016 with Container
2、Visual Studio 2015 Enterprise(Profresianal要装Update 3)
3、.NET Core 1.0.0 – VS 2015 Tooling Preview 2。请点击此处安装
4、Microsoft .NET Core SDK,可以到微软官方网站下载安装
5、Visual Stuido Tool For Docker(在VS扩展里下载安装)
实验步骤
一、Docker环境准备
亚马逊EC2 Windows Server 2016 with Container已经内置了Docker,如下:
点击Windows左下角搜索-》输入“Server Manager”,
在Dashboard右边点Add Role or Featurn
这个和以往Server不一样,roles和features是一起添加的。这里点下一步,发现Roles中的Hyper-V是没启用的,好多人说要启用,这里我没启用
在features里面有个Container,这个就是Docker了
验证Docker是否已安装,在CMD下桥下如下命令来验证一下:
docker info如果能被识别执行的话,说明Docker已经安装成功了。
二、开发ASP.NET Core WebApi
启动VS2015前,请确保已经安装了DotNetCore.1.0.1-VS2015Tools.Preview2.0.2和Visual Stuido Tool For Docker(在VS扩展里下载安装)
工具生成的Dockerfile文件,把这句注释掉,不然运行docker run命令时会报错(需要在powershell 运行 dotnet dockerwebapidemo.dll)
保存自动编译,在程序根目录下运行dotnet publish,会自动编译而且在bin下生成publish文件夹
然后在publish文件夹下运行docker build生成docker镜像
注意最后一个点,表示当前路径。
查看生成的镜像
运行容器
docker run -it -p 8600:5000 xucixiao/dockerwebapidemo
返回如下界面表示容器启动成功
阿里云: www.aliyun.com
华赐软件: www.huacisoft.com
C#开源社区: www.opencsharp.net
清泓美肤苑: 清泓美肤苑
bootstrap权限管理系统: Asp.Net Mvc3 bootstrap权限管理系统