在Docker中运行asp.net core 跨平台应用程序

概述

Docker已经热了有一两年了,而且我相信这不是一个昙花一现的技术,而是一个将深远影响我们日后开发和部署、运营应用系统的一种创新(很多人将其作为devops的一种非常重要的基石)。学习docker的最好方式,莫过于它的官方文档 ,有兴趣 的同学请参考 https://www.docker.com/what-docker 


笔者最近在写一个Office 365的集成和扩展应用开发的系列文章(https://aks.ms/office365devguide) ,其中的范例也将基于docker来部署。


准备

为了进行后续的实验,请准备如下的环境

  1. 基本条件

    1. Windows 10 Enterprise, Professional, or Education

    2. 64-bit Processor with Second Level Address Translation (SLAT).

    3. CPU support for VM Monitor Mode Extension (VT-c on Intel CPU's).

    4. Minimum of 4 GB memory.

  2. Docker for Windows  请参考 https://docs.docker.com/docker-for-windows/ 和  https://docs.docker.com/docker-for-windows/install/ 

  3. Microsoft .NET Core SDK ,请参考 https://www.microsoft.com/net/core#windowscmd (我安装的是最新的2.0 preview2)


动手实验

  1. 打开Powershell

  2. 创建dotnet core mvc应用程序  dotnet new mvc –o mvcapp

  3. 切换到该目录  cd mvcapp

  4. 还原包(如果是dotnet core 2.0,则可以跳过这个步骤)  dotnet restore

  5. 发布应用程序  dotnet publish –c release

  6. 在当前目录下面创建一个DOCKERFILE,内容如下

    1. FROM microsoft/dotnet:2.0.0-preview2-sdk

      WORKDIR /app

      COPY bin/release/netcoreapp2.0/publish .

      ENTRYPOINT ["dotnet", "mvcapp.dll"]

  7. 生成docker镜像  docker build –t mvcapp .

  8. 运行docker镜像  docker run –p 8000:80 –e “ASPNETCORE_URLS=http://+:80” mvcapp


以上命令如果不熟悉,请大家自行查看帮助。例如 dotnet new mvc –h 或者 docker build -h


如此这般之后,你就可以打开本机的浏览器,输入http://localhost:8000 进行访问了

相关文章: 

  • 老司机实战Windows Server Docker:1 初体验之各种填坑

  • 老司机实战Windows Server Docker:2 docker化现有iis应用的正确姿势

  • 老司机实战Windows Server Docker:3 单节点Windows Docker服务器简单运维(上)

  • 老司机实战Windows Server Docker:4 单节点Windows Docker服务器简单运维(下)

  • 老司机实战Windows Server Docker:5 Windows Server Dockerfile葵花宝典

  • .Net大户的选择:Windows Container在携程的应用

  • Docker4Dev #6 使用 Windows Container 运行.net应用

  • Docker基础入门及示例

  • Linux+Nginx+Asp.net Core部署

  • Docker Machine 简介

  • 容器,Docker和Azure Container Service

  • 基于VS2017的Docker Support体检ASP.NET Core站点的Docker部署

  • Docker-Compose 一键部署Ningx+.Net Core+Redis集群

  • DotNetCore跨平台~Dockerfile的解释

  • Docker~从Dockerfile到Container的过程

原文地址:http://www.cnblogs.com/chenxizhang/p/7148657.html


.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/324482.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java中的Queue队列的用法

大家好,欢迎来到雄雄的小课堂,今天给大家分享的是“java中的Queue队列的用法” 前言:好多人对Queue不是很熟悉,毕竟平时也不怎么用,遇到集合要么List要么map这些常用的,殊不知,java中还有个Que…

SpringCloud Netflix Eureka

文章目录一、 Eureka简介Eureka组件二、 Eureka和Zookeeper 对比1 什么是CAP定理2 基于CAP定理比对Eureka和Zookeeper三、 搭建Eureka注册中心1 POM文件2 配置文件application.yml3 启动类4 访问Eureka Server WEB服务管理平台四、 Eureka 服务管理平台介绍1 Eureka Server服务…

使用枚举定义常量更好点儿

大家好,欢迎来到雄雄的小课堂,昨天给大家分享的是“java中的Queue队列的用法示例”,今天,分享的主题是“java中,推荐使用枚举定义常量”。 前言:常量,相信大家多不会陌生,常量值一般…

SpringCloud Netflix Ribbon

文章目录一、 Ribbon简介二、 使用Ribbon开发微服务1 创建springcloud工程 和 commons子模块2 开发服务提供者 - ribbonappservice3 开发服务消费者 - ribbonappclient三、 集中式与进程内负载均衡区别四、 Ribbon常见的负载均衡策略1 Ribbon中的常用负载均衡简介2 配置负载均衡…

Entity Framework Core 生成跟踪列

注意:我使用的是 Entity Framework Core 2.0 (2.0.0-preview2-final)。正式版发布时,功能可能存在变动。 当您设计数据库时,有时需要添加列以跟踪记录何时更改,以及谁进行了更改。例如,您添加以下列: Cre…

老师,我们想看到您的笑容!

“老师,你可以对我们笑笑吗?”今天偶然遇见一位学生在吃饭的路上和我说道。我冲他点了点头,笑道:“好呀”!是啊,我是好久没有把笑声带回班级中了。1目前,4班都在倾尽全力的做项目,试…

阿里巴巴开源 Spring Cloud Alibaba,加码微服务生态建设

转载自 阿里巴巴开源 Spring Cloud Alibaba,加码微服务生态建设 本周,Spring Cloud联合创始人Spencer Gibb在Spring官网的博客页面宣布:阿里巴巴开源 Spring Cloud Alibaba,并发布了首个预览版本。随后,Spring Cloud…

微软发布Azure Stack更多细节,预计9月交付

在近日举行的微软全球合作伙伴大会上,微软宣布Azure Stack现在开始接受预定,预计9月份就可以交付。Azure Stack是微软公有Azure云的私有云实现。和其他私有云提供商不同,微软将把Azure Stack作为一项基于消费的服务,这和其公有云的…

今天你们表现的真棒!!!

12月5日在报告厅举行了“2020级青鸟4班 HTML网页设计大赛”。从一个洁白如纸的空白页面,到布满五彩斑斓样式的cool页面,是同学们一个字母一个单词的敲打出来的。从头脑空白啥都不会说到现在的条理清晰张嘴就来的演讲,是同学们时时刻刻写稿子背…

再有人问你Netty是什么,就把这篇文章发给他

转载自 再有人问你Netty是什么,就把这篇文章发给他 本文基于Netty4.1展开介绍相关理论模型,使用场景,基本组件、整体架构,知其然且知其所以然,希望给大家在实际开发实践、学习开源项目提供参考。 这是一篇万字长文&a…

SpringCloud Netflix Hystrix

文章目录一、 Hystrix简介1 什么是灾难性雪崩效应2 什么是Hystrix二、 服务降级(Ribbon中)三、 服务熔断(Ribbon中)(服务降级的强化版)四、 请求缓存(Ribbon中)(不推荐)(查询频率高,修改频率低时谨慎使用)五、 Openfeign的雪崩处理1 服务降级…

[信息安全] 3.HTTPS工作流程

0. 简单回顾 在前面两篇博客中介绍了密码相关的一些基本工具,包括(对称密码,公钥密码,密码散列函数,混合密码系统,消息认证码码,数字签名,伪随机数,数字证书&#xff09…

如何实现省市关联的下拉列表

前言:在某些电商网站或者APP中,通常填写地址时,会有这样的功能:当我们选择的省份是“山东”时,则城市的下拉列表里所展示的便是山东的城市,当选择的省份是“山西”时,城市的下拉列表所展示的便是…

什么样的事才是有意义的

有时候就在想,真正什么样的事才算有意义呢?

在Azure Container Service创建Kubernetes(k8s)群集运行ASP.NET Core跨平台应用程序

引子 在此前的一篇文章中,我介绍了如何在本地docker环境中运行ASP.NET Core跨平台应用程序,看起来非常不错,不是吗?那么,如果我们希望真正在实际的生产环境去部署和运行这个应用程序,应该怎么做呢&#xf…

这也许是你不曾留意过的 Mybatis 细节

转载自 这也许是你不曾留意过的 Mybatis 细节 Mybatis 可以说是 Java 后端的必备技能,可能你和我一样经常使用到它。但有时 cv 多了,会忘记了一些细节处理,比如为什么要加上这个注解?它的作用是什么等等。 这篇文章是我以前写的…

Nacos整合Ribbon实现客户端负载均衡

启动类去掉RibbonClient注解 10 50 100 1 权重优先调用 注意:启动类加RibbonClient注解 2 集群优先调用 3 元数据基于版本优先调用

ssl1344-Knights【最大独立集,最大匹配,图论】

正题 大意 求在一个扣掉m个格子的n*n的棋盘能放置的最多的马。 解题思路 求最大独立集就好了,最大独立集点数-最大匹配数。最重要的是如何建图。定义一个数组point[i][j]表示点的编号。但是如果这样的话就会O(n4)O(n4)就会超时。现在我们把棋盘从左到右后从上到…

小课堂?小视频?小商店?

今天,没有什么特别内容可更新,就来随便聊聊吧。01雄雄的小课堂这是一个公众号,内容主要有两大类。一类是以分享编程技术为主,一方面是为了提升自己,另一方面也是为了帮助别人,希望阅者有益,平时…

Entity Framework Core 软删除与查询过滤器

注意:我使用的是 Entity Framework Core 2.0 (2.0.0-preview2-final)。正式版发布后,功能可能存在变动。 继续探索Entity Framework Core 2.0,今天我将探讨如何轻松使用软删除(或逻辑删除)。我的意思是以透明的方式实…