首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ASP.NET Core 2.1 使用Docker运行

1.新建一个 ASP.NET Core 2.1 项目 然后运行一下项目,确保我们刚刚建立的项目可以正常运行。...2.编写 Dockerfile 新建一个文本文件,命名为 Dockerfile FROM microsoft/dotnet:2.1-aspnetcore-runtime WORKDIR /app COPY...需要设置Dockerfile的如下属性,保证其能复制到发布目录: 3.构建Docker镜像 我们将镜像命名为 :aspnetcoredocker 进入到发布文件目录,执行命令便可打包镜像: docker.../build.sh 构建成功后可以通过 docker images 命令查询到我们构建的镜像: 若在linux下执行sh脚本时,遇到错误“-bash: ....: 5.验证访问 我们可以通过 curl命令来直接访问我们容器启动的asp.net core 网站: 或者直接通过浏览器访问: 至此,我们通过Docker运行asp.net core 2.1应用程序就结束了

1.4K20
您找到你想要的搜索结果了吗?
是的
没有找到

ASP.NET Core 3.0 : 二十八. 在Docker中的部署以及docker-compose的使用

本文简要说一下ASP.NET Core 在Docker中部署以及docker-compose的使用  (ASP.NET Core 系列目录)。 系统环境为CentOS 8 。 ...五、创建一个ASP.NET Core 项目,生成并运行Docker镜像 新建一个名为DockerComposeDemo的API项目,直接发布,拷贝发布的文件到CentOS系统中,例如/home/aspcore...然后将工作目录设为/app , 拷贝发布的项目文件,设置进程的入口是通过dotnet运行DockerComposeDemo.dll。...重新发布项目并将文件拷贝到/home/aspcore目录,其中的dockerfile文件不变,添加本例中的docker-compose.yml文件。...这里用到了两个镜像,第一个From调用了微软官方的包含ASP.NET Core 3.0 的运行时版镜像。

2.7K30

跨平台开发体验: Docker

二、定义Dokerfile 我们现在需要将这个ASP.NET Core应用制作成一个Docker镜像,为此我们需要在项目根目录下创建一个Dockerfile文件(文件名就是Dokerfile,没有扩展名...设置(运行)工作目录,并将发布文件拷贝到out子目录下 WORKDIR /app COPY --from= build /app/out . # 5.3....执行dotnet命令启动ASP.NET Core应用 ENTRYPOINT ["dotnet", "helloworld.dll"] 这个Dockerfile采用了一个中间层(build)来暂存ASP.NET...具体来说,这个层采用“microsoft/aspnetcore-build:2”作为基础镜像,我们先将定义项目的.csproj文件(helloworld.csproj)拷贝到当前工作目录,然后运行dotnet...在真正将编译生成Docker镜像的时候,我们采用“mcr.microsoft.com/dotnet/core/aspnet:3.0”作为基础镜像,由于应用在上面进行了预先发布,所以我们只需要将发布后的所有文件拷贝到当前工作目录就可以了

2K30

优化 ASP.NET Core Docker 镜像的大小

在这容器化的世界里,我们已经很少直接通过文件发布运行asp.net core程序了。现在大多数情况下,我们都会使用docker运行程序。在使用docker之前,我们往往需要打包我们的应用程序。...这篇文章就来介绍下如何缩小asp.net core 打包出来镜像的大小。 新建asp.net core 程序 ? 新建一个asp.net core应用程序,用来演示打包。...这个Dockerfile比较简单,使用dotnet sdk:5.0最为底层包来构建,这也是最傻瓜的打包方式。那么看看这个镜像打出来有多大吧。 docker build ....右键解决方案=>添加=>Docker支持=>Linux 。 选择完成后VS会为我们自动添加一个Dockerfile在根目录。...关于alpine linux可以查看这篇:Alpine Linux CentOS 有什么区别? 。

2.2K20

.NET Core多平台开发体验: Docker

我们现在需要将这个ASP.NET Core MVC应用制作成一个Docker镜像,为此我们需要在项目根目录(d:\projects\helloworld)下创建一个Dockerfile文件(文件名就是Dokerfile...COPY *.csproj ./ RUN dotnet restore # 拷贝所有文件到工作目录(/app),然后执行dotnet publish命令将应用发布到/app/out目录下 COPY ....build-env)来暂存ASP.NET Core MVC应用发布后的资源,其工作目录为“/app”。...接下来我们将当前项目的所有文件拷贝到当前工作目录,并执行dotnet publish对整个项目进行编译发布(针对Release模式),发布后的资源被保存到目录“/app/out”中。...在真正将ASP.NET Core MVC应用编译成Docker镜像的时候,我们采用“microsoft/aspnetcore:2.0”作为基础镜像,由于应用在上面进行了预先发布,所以我们只需要将发布后的所有文件拷贝到当前工作目录就可以了

1.4K80

.NET Core多平台开发体验: Docker

我们现在需要将这个ASP.NET Core MVC应用制作成一个Docker镜像,为此我们需要在项目根目录(d:projectshelloworld)下创建一个Dockerfile文件(文件名就是Dokerfile...COPY *.csproj ./ RUN dotnet restore # 拷贝所有文件到工作目录(/app),然后执行dotnet publish命令将应用发布到/app/out目录下 COPY...build-env)来暂存ASP.NET Core MVC应用发布后的资源,其工作目录为“/app”。...接下来我们将当前项目的所有文件拷贝到当前工作目录,并执行dotnet publish对整个项目进行编译发布(针对Release模式),发布后的资源被保存到目录“/app/out”中。...在真正将ASP.NET Core MVC应用编译成Docker镜像的时候,我们采用“microsoft/aspnetcore:2.0”作为基础镜像,由于应用在上面进行了预先发布,所以我们只需要将发布后的所有文件拷贝到当前工作目录就可以了

1.2K60

.NET Core项目部署到Windows系统Docker

1、新建一个ASP.NET Core Web应用(模型-视图-控制器) 2、 项目启动DockerDocker OS选择Windows 3、系统默认的dockerfile文件如下 #See https... 5、右击项目重新生成解决方案无误后,在Release模式下,发布项目到本地文件夹 准备发布 6、在发布文件夹下,更改dockerfile文件如下 FROM mcr.microsoft.com...中通过命令进入到发布文件夹目录 8、 创建镜像 在第7步下输入如下命令,创建docker images docker build -t dockerdemoimg ....---表示build上下文为当前目录,默认情况下docker会使用在上下文的根目录下找到Dockerfile文件 如上图即创建成功 9、可以通过命令或直接在Docker Desktop上看到刚创建成功的镜像...当然可以不指定,默认会为我们创建 -p 外部端口内部容器端口映射 -d 表示在后台以守护态(daemonized)形式运行容器 最后一个参数 dockerdemoimg 就是我们刚创建的镜像名称 11

15410

Docker & ASP.NET Core (2):定制Docker镜像

DockerfileDocker的世界里,我们可以通过一个叫Dockerfile的文件来创建Docker镜像,随后可以运行容器。 Dockerfile就是一个文本文件,里面写着一些指令。...CMD ["python", "app.py"],里定义了容器运行的默认命令和参数。 创建一个ASP.NET Core DockerfileDocker hub里找到aspnetcore: ?...使用VSCode打开我上篇文章建立的ASP.NET Core项目(或者新建一个也可以): ? 然后我们这样来创建Dockerfile,首先点击Extensions,搜索docker: ?...然后按Ctrl+Shift+P,然后输入docker: ? 可以看到有很多可用的命令。 选择Add Docker Files to Workspace,然后选择ASP.NET Core: ?...可以看到该容器运行后就马上退出了,查看一下日志看看原因: ? 错误信息是: ? 其实这个错误信息感觉并不明确。 具体怎么解决这个错误,且听下回分解。。

1.8K20

Linux环境下将.net6项目部署到docker

1.创建一个ASP.NET Core Web应用(MVC) 注意点:建议不用勾选单选框“启用Docker(E)",因为勾选后,涉及到Docker-Desktop的安装,可能会引起本地虚拟化组件Hyper-V....NET on Docker.png 2.发布ASP.NET Core Web(MVC)项目 publish.png 3.上传发布文件到Centos系统发的某个指定文件夹。...Dockerfile vim Dockerfile 编辑 Dockerfile文件如下: Dockerfile.png 5.构建镜像 注意镜像名称后带上版本号 构建镜像.png 6....创建并运行容器 创建容器.png 7.访问容器 访问方式:http://宿主机ip:端口号 运行效果图.png 8.保存镜像 我们的镜像做好之后,我们要保存起来,以供备份使用 [root@centos_docker...testdocker]# docker save -o dotnet6_test.tar dotnet6_test 保存镜像.png 9.载入镜像 docker load --input dotnet6

1.8K80

.NET Core微服务之ASP.NET Core on Docker

容器镜像的关系类似于面向对象编程中的对象类。     Docker的架构如下图所示,Client 通过接口Server进程通信实现容器的构建,运行发布。.../app # 设置端口 EXPOSE 8810 # 使用dotnet Manulife.DNC.MSAD.NB.AgentService.dll来运行ASP.NET Core项目,注意大小写 ENTRYPOINT...["dotnet", "Manulife.CD.MSAD.NB.AgentService.dll", "--server.urls", "http://*:8810"]   (3)发布这个ASP.NET...大家可以浏览杨晓东的《ASP.NET Core Linux下为dotnet创建守护进程》以及focus-lei的《在docker运行.net core程序》来学习,这里就不再赘述了。...参考资料 (1)菜鸟教程,《Docker教程》 (2)杨晓东,《ASP.NET Core Docker部署》,《ASP.NET Core Linux下为dotnet创建守护进程》 (3)李朝强,《Docker

1.8K10

传统.NET 4.x应用容器化体验(2)

github地址:https://github.com/Microsoft/dotnet-framework-docker 这是一个基于.NET 4.8的ASP.NET MVC应用程序,它运行起来和之前的...clone下来后,在VS中编译一下然后发布一下Release文件,最后将Release文件复制到阿里云ECS的文件目录下。...3 通过sdk编译打包一体化 我们都知道,在Dockerfile中除了可以直接简单地引入运行环境镜像,也可以引入sdk镜像来执行编译和打包的操作,这一特点十分适合在持续集成的任务中执行。...有了打包好的镜像,我们再来运行一下容器实例: > docker stop aspnet_mvc_sample > docker run --name aspnet_mvc_sample --rm -it.../samples:aspnetmvcapp 5 总结 本文介绍了如何在Windows Container下通过Dockerfile实现.NET 4.x应用程序的编译打包构建过程,并以一个ASP.NET

1.4K20

.Net Core in Docker - 在容器内编译发布运行

Docker内编译发布.Net Core程序并运行 新建一个Asp.net Core MVC项目 我们使用一个Asp.net Core MVC程序来演示如何发布Docker运行。...添加Dockerfile文件 在CoreForDocker下新增一个Dockerfile文件,注意没有任何扩展名。我们需要基于microsoft/dotnet:latest这个镜像构建一个新的镜像。.../CoreForDocker.dll"] 大概解释下Dockerfile的意思: FROM microsoft/dotnet:latest:使用dotnet的最新镜像,这个镜像其实对应的应该就是2.2...访问一下服务器的5000端口,发现能够正确返回数据表示我们的Asp.net Core程序在容器中运行成功了 以后当我们对源码进行修改,并提交后,我们只需在服务器上拉取最新的代码然后使用docker build...SDK来发布.Net Core 程序到容器中运行,并且通过shell脚本的方式再次简化发布

1.9K40

Windows 自带容器支持,你用过没

80 ENV ASPNETCORE_URLS http://+:80 ENTRYPOINT ["dotnet", "YoYoMooc.ExampleApp.dll"] 两个 Dockerfile...创建 Windows 本地镜像和容器 创建 Windows 的镜像和容器的过程 Linux 是相同的,我们首先需要在YoYoMooc.ExampleApp根目录中,打开终端运行以下命令: dotnet...-t yoyomooc/exampleapp:windows -f Dockerfile.windows 在这里为了区别 Linux 容器的区别,我们将镜像名称命名为yoyomooc/exampleapp...展示了如何创建 Windows 和 Linux 容器,如何修改容器并使用修改后的容器来创建新的容器和镜像,以及将对应的镜像发布Docker Hub,阿里云及 Azure。...参考资料 [1] 发布Docker镜像到阿里云容器仓库: https://www.bilibili.com/video/BV17T4y1u78y/ [2] Youtube(需科学上网): https:/

4.1K20

.NET Core微服务之ASP.NET Core on Docker

容器镜像的关系类似于面向对象编程中的对象类。     Docker的架构如下图所示,Client 通过接口Server进程通信实现容器的构建,运行发布。...# docker run hello-world 三、ASP.NET Core on Docker配置   (1)拉取dotnet/aspnetcore的最新镜像,这里以aspnetcore 2.0为例...  拉取之后,验证一下是否拉取成功了:# docker images   (2)现在我们进入VS中为我们的一个ASP.NET Core WebAPI编辑一个Dockerfile # 父镜像 FROM.../app # 设置端口 EXPOSE 8810 # 使用dotnet Manulife.DNC.MSAD.NB.AgentService.dll来运行ASP.NET Core项目,注意大小写 ENTRYPOINT...["dotnet", "Manulife.CD.MSAD.NB.AgentService.dll", "--server.urls", "http://*:8810"]   (3)发布这个ASP.NET

1K20

Docker最全教程——.NET5进一步拥抱容器技术

ASP.NET Core 5.0基于.NET 5.0,但保留名称“ Core”以避免将其ASP.NET MVC 5混淆。.../ 支持cgroup v2 NET运行时现在支持cgroup v2,我们预计它将在2020年后成为容器相关的重要API。...您可以通过我们2019年Docker更新了解更多关于cgroup和Docker资源限制的信息。Linux发行版和容器运行时正在添加对cgroup v2的支持。...我们添加了Server Core,是因为我们收到了客户的反馈,他们想要一个Windows Server完全兼容的.NET镜像。我们还进行了其他更改,以减小Windows服务器核心镜像的大小。...如果对容器完全没有基础,可以阅读本人书籍: 《Docker+Kubernetes应用开发快速上云》以及【麦扣聊技术】公众号的系列Docker教程文章。

77930

ASP.NET Core & Docker 实战经验分享

dockerfile: Alipay.Demo.PCPayment/Dockerfile 五.设置容器名称 我们在通过docker compose运行的容器将会被指定一个默认的容器名称,如果是第四节的配置...Docker容器的重启都是由Docker守护进程完成的,因此守护进程息息相关。...run的退出状态码如下: 0,表示正常退出 非0,表示异常退出(退出状态码采用chroot标准) 125,Docker守护进程本身的错误 126,容器启动后,要执行的默认命令无法调用 127,容器启动后...但是我们一到Linux运行或者使用Dockerdotnet镜像使用的是ubantu环境)运行时,会发现程序无法正常生成图片,会出现异常,这是因为我们的zk在Linux/Docker运行需要安装一个名为...关于实践ASP.NET Core & Docker 构建持续集成大家可以看我的这一系列文章:《ASP.NET Core & Docker 零基础持续集成》。

1.2K51

如何使用nginx作为docker容器中ASP.NET应用的反向代理

图片ASP.NET是一个Web开发框架,可以让开发者创建动态的Web应用和服务。ASP.NET的一个优点是它可以运行在不同的平台上,比如Windows,Linux和macOS,使用docker容器。...使用dockerASP.NET的一个挑战是如何配置托管应用的Web服务器。一个流行的选择是使用nginx作为ASP.NET应用的反向代理。...要使用nginx作为反向代理,开发者需要配置nginx.conf文件,指定运行docker容器中的ASP.NET应用的位置和端口。...以下是一个基于ASP.NET的Web应用程序的Dockerfile,该应用程序将运行在NGINX反向代理的Web服务器上:# 指定使用 ASP.NET 官方的 .NET SDK 镜像FROM mcr.microsoft.com.../dotnet/sdk:5.0 AS build# 拷贝应用程序源码到容器中WORKDIR /appCOPY . .# 使用 .NET SDK 镜像进行构建并发布应用程序RUN dotnet publish

93320

.NET Core实战项目之CMS 第十七章 CMS网站系统的部署

控制台直接运行 Asp.Net Core 程序在发布后,会产生一个入口 dll 文件,要运行该程序,只需要通过 dotnet 命令执行该 dll 文件即可。... Asp.Net 不同,ASP.NET Core 不再是由 IIS 工作进程(w3wp.exe)托管,而是使用自托管 Web 服务器(Kestrel)运行,IIS 则是作为反向代理的角色转发请求到 Kestrel...首先,是 Docker 的基本使用: 编写 Dockerfile 使用 docker build 构建镜像 使用 docker run 创建容器并运行 好,我们来依次说明,对于 Docker 来说,需要先安装...接着,我们假设发布包路径如下: root-folder/ app/ # 发布包目录 xxx.dll # 程序入口点 Dockerfile # Dockerfile文件 然后针对该程序,...编写如下 Dockerfile: # 根镜像 FROM microsoft/dotnet:2.2-runtime # 拷贝程序发布包 COPY app /app # 设置工作目录 WORKDIR /

2.3K20
领券