按网上的做法用dockerfile文件是可以弄得出来的,http://www.docker.org.cn/article/119.html,

不过我想把网站文件放在外面硬盘目录,再映射进去,这样只要在硬盘目录中修改CSHTML文件后重启一下容器就行了

步骤如下:

1. vs中建立ASP.NET CORE网站,类名为coreweb1

2. 发布到c:\temp\coreweb1目录

3. 先在本地CMD命令行测试一下是否成功,cd c:\temp\coreweb1 , 再运行docnet coreweb1.dll

4. 不出意外应该没错,浏览器输入http://localhost:5000 可以访问网站

5. 退出命令行工具,开始进行docker镜像部署,前提是先装好docker,如果映射本地端口是80则记得先把IIS停了(如果你装了IIS的话)

6. 命令行CMD中输入docker命令 docker run -p 8001:80 -v c:/temp/coreweb1:/wwwroot -w /wwwroot/ microsoft/aspnetcore dotnet /wwwroot/coreweb1.dll

解释下上面的命令:运行docker容器,名字叫microsoft/aspnetcore,这是微软官方的asp.net core镜像,映射本地端口8001到容器内的80端口,把本地目录c:/temp/coreweb1 映射为容器里的 /wwwroot 目录 , 把容器内的工作目录 设置为 /wwwroot/ ,容器运行起来后再运行命令 dotnet /wwwroot/coreweb1.dll

7. 如果不报错应该就能看到网站正在运行了,在外面浏览器中输入http://localhost:8001 应该就可以访问网站了,哪怕在命令行中按ctrl+c退出,但是实际上docker容器也是正在运行中,输入命令docker ps 可以看到正在运行的容器

8. vs中再创建另一个asp.net core网站,类名为coreweb2,发布到c:\temp\coreweb2,

9. 运行docker命令映射8002端口 :docker run -p 8002:80 -v c:/temp/coreweb2:/wwwroot -w /wwwroot/ microsoft/aspnetcore dotnet /wwwroot/coreweb2.dll

10. 这样二个core网站就部署起来了,浏览器分别输入http://localhost:8001 和 http://localhost:8002 就可以分别看到2个网站

11. 如果外面目录中的文件有修改,比如修改了c:/temp/coreweb1/views/home/index.cshtml文件, 则在命令行中重启docker容器后刷新浏览器才能看到修改后的效果 ,命令:docker restart 容器ID , 其中容器ID是通过 docker ps 查询出来的,前面第一列的就是,可以只输入开头几个字母

总结:我有一个梦想,在XX云上要一个最便宜的单核1G内存的linux服务器,装上nginx和docker,然后通过 docker运行asp.net core网站 ,PHP网站,JSP网站,GO网站,PYTHON网站,NODE.JS网站.....

ASP.NET CORE做的网站运行在docker上(不用dockerfile文件部署)的更多相关文章

  1. ASP.NET CORE做的网站运行在docker实践

    用VS2017 建立了 DotNet Core 2.2 的网站后,如何转移到 Docker 下运行? 下面分两种方式来实践: 1.直接手动命今行,将本机目录映射进Docker,运行网站.2.制作 Im ...

  2. 在 Mac OS 上创建并运行 ASP.NET Core 1.0 网站

    var appInsights=window.appInsights||function(config){ function r(config){t[config]=function(){var i= ...

  3. win10 uwp 手把手教你使用 asp dotnet core 做 cs 程序

    本文是一个非常简单的博客,让大家知道如何使用 asp dot net core 做后台,使用 UWP 或 WPF 等做前台. 本文因为没有什么业务,也不想做管理系统,所以看到起来是很简单. Visua ...

  4. 牛腩学ASP.NET CORE做博客(视频)

    牛腩学习ASP.NET CORE做的项目,边学边做. 目录: 01-dotnetcore网站部署到centos7系统上(时长 2:03:16) 02-前期准备及项目搭建 (时长:0:23:35) 03 ...

  5. win10 uwp 使用 asp dotnet core 做图床服务器客户端

    原文 win10 uwp 使用 asp dotnet core 做图床服务器客户端 本文告诉大家如何在 UWP 做客户端和 asp dotnet core 做服务器端来做一个图床工具   服务器端 从 ...

  6. 如何在ASP.NET Core程序启动时运行异步任务(3)

    原文:Running async tasks on app startup in ASP.NET Core (Part 3) 作者:Andrew Lock 译者:Lamond Lu 之前我写了两篇有关 ...

  7. 微服务中的健康监测以及其在ASP.NET Core服务中实现运行状况检查

    1 .什么是健康检查? 健康检查几乎就是名称暗示的.它是一种检查您的应用程序是否健康的方法.随着越来越多的应用程序转向微服务式架构,健康检查变得尤其重要(Health Check).虽然微服务架构有很 ...

  8. 创建asp.net core 的静态网站

    这个名字听起来很怪 既然是静态网站 为什么要是asp.net core的呢? 1.在vs上面好像不能创建纯静态的网站,所以我们就想创建一个asp.net core的空网站 然后在里面使用静态的html ...

  9. asp.net core webapi/website+Azure DevOps+GitHub+Docker

    asp.net core webapi/website+Azure DevOps+GitHub+Docker 新春开篇作,主要写一下关于asp.net core web/api 2.2 项目借助dev ...

随机推荐

  1. “Info.plist” couldn’t be removed

    Showing All Messages error: failed to remove /Users/Rubert/Library/Developer/Xcode/DerivedData/Proje ...

  2. 【DB2】慎用nickname,可能会引起效率较低

    在使用db2的时候,在A库建立了nickname,指向B库的物理表(数据量800多万),现在使用程序(JDBC)连接数据库,并计算指标,但是发现效率很低. 解决办法: 删除A库中的nickname,在 ...

  3. CentOS 6.4 安装 rabbitmq(3.6.15)

    安装废了一番周折,中间需要装一个socat,网上各种过时的地址. 无奈去socat官网,结果提供编译安装,编译安装完yum install rabbitmq的时候仍然提示缺少需要的依赖,烦,好在折腾两 ...

  4. HP ALM

    HP ALM 使用经验 使用HP ALM(Application Lifecycle Management)软件有一个多月的时间了,我是从安装,部署,建项,配置,使用,再到问题收集,这个过程过来的.发 ...

  5. Dockerfile 构建google-chrom应用

    cat Dockerfile.chrome FROM centos MAINTAINER zh******ech.cn ENV LANG en_US.UTF-8 RUN /bin/cp /usr/sh ...

  6. Swift中的Any 与 AnyObject、AnyClass的区别?

    在 Swift 中能够表示 “任意” 这个概念的除了Any .AnyObject以外,还有一个AnyClass. Any.AnyObject.AnyClass有什么区别: AnyObject是一个成员 ...

  7. 【C++】不要想当然使用resize

    #include <iostream> // std::cout #include <vector> // std::vector using namespace std; i ...

  8. Cobbler自动部署主机系统

    Cobbler自动部署主机系统 简介: Cobbler由python语言开发,是对PXE和 Kickstart以及DHCP的封装.融合很多特性,提供了CLI和Web的管理形式.更加方便的实行网络安装. ...

  9. linux sshd ssh 服务的启动和使用

    这里使用sshd服务登录到linux系统的方法,不少同学走了弯路,包括我,我一直使用vmware虚拟linux学习使用的,后来windows病毒的原因转入到linux系统中使用 1,sshd服务安装 ...

  10. CGRectMake 延伸

    判断给定的点是否被一个CGRect包含,可以用CGRectContainsPoint函数 BOOLcontains=CGRectContainsPoint(CGRectrect,CGPointpoin ...