温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Docker容器运行ASP.NET Core的方法

发布时间:2022-05-31 11:11:59 来源:亿速云 阅读:360 作者:zzz 栏目:大数据

这篇文章主要介绍“Docker容器运行ASP.NET Core的方法”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Docker容器运行ASP.NET Core的方法”文章能帮助大家解决问题。

一、新建asp.net core应用

这里新建了一个mywebapp的asp.net core的应用。

Docker容器运行ASP.NET Core的方法

二、添加docker支持

添加docker支持有两种方式,一是在新建项目时设置启用docker支持,二是在已创建的项目上右键->添加->docker支持。

Docker容器运行ASP.NET Core的方法

Docker容器运行ASP.NET Core的方法

同时需要选择是window平台还是linux平台,如果是window系统就需要设置window平台,同时docker也需要设置为window containers。如下图报image operating system "windows" cannot be used on this platform错误,就是由于选择的平台不对。

Docker容器运行ASP.NET Core的方法

Docker容器运行ASP.NET Core的方法

Docker容器运行ASP.NET Core的方法

三、创建docker镜像

添加docker支持后会自动生成dockerfile文件,这里有一个坑,在copy ["mywebapp/mywebapp.csproj", "mywebapp/"]行中需要注意是mywebapp/mywebapp.csproj,是mywebapp目录下的mywebapp.csproj工程文件,所以需要把创建好的dockerfile拷贝到工程文件目录下。

#depending on the operating system of the host machines(s) that will build or run the containers, the image specified in the from statement may need to be changed.
#for more information, please see https://aka.ms/containercompat

from microsoft/dotnet:2.2-aspnetcore-runtime-nanoserver-sac2016 as base
workdir /app
expose 80

from microsoft/dotnet:2.2-sdk-nanoserver-sac2016 as build
workdir /src
copy ["mywebapp/mywebapp.csproj", "mywebapp/"]
run dotnet restore "mywebapp/mywebapp.csproj"
copy . .
workdir "/src/mywebapp"
run dotnet build "mywebapp.csproj" -c release -o /app

from build as publish
run dotnet publish "mywebapp.csproj" -c release -o /app

from base as final
workdir /app
copy --from=publish /app .
entrypoint ["dotnet", "mywebapp.dll"]

Docker容器运行ASP.NET Core的方法

在项目目录下使用docker命令build生成docker镜像,docker build -t aspnetdemo .,(aspnetdemo后面有个.,表示dockerfile路径)。这里build了一个aspnetdemo的镜像,由于首次运行dockerfile,一些.net core基础镜像需要下载,而且家里网速也比较慢,下载的过程等了好久。

Docker容器运行ASP.NET Core的方法

Docker容器运行ASP.NET Core的方法

四、启动容器

在第三步镜像已经创建完成,使用docker images可以看到已创建好的镜像,然后就是使用docker run启动容器运行.net core应用。

Docker容器运行ASP.NET Core的方法

在浏览器中山输入 http://localhost:8080/ ,可以看到如下页面。

Docker容器运行ASP.NET Core的方法

微软官方文档写使用 windows 容器时,必须直接在浏览器中转到容器 ip 地址,这里使用了-p映射了端口,所以直接输入 http://localhost:8080/ 是可以访问的。

Docker容器运行ASP.NET Core的方法

下面使用ipconfig查找容器映射的docker的ip,然后在浏览器输入docker的ip也是可以访问。

Docker容器运行ASP.NET Core的方法

Docker容器运行ASP.NET Core的方法

关于“Docker容器运行ASP.NET Core的方法”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI