参考文章:

https://www.cnblogs.com/jRoger/p/aspnet-core-deploy-to-docker.html

https://www.cnblogs.com/jRoger/p/aspnet-core-deploy-to-docker.html

docker for windows下载连接: https://docs.docker.com/docker-for-windows/install/

关于配置的细节以及docker的下载安装等操作,参考文章中已经介绍的很详细了。

由于我从来没搞过虚拟机也完全不懂linux语言等...所以还是耽误了半天时间...

由于公司最近在搞服务化,看了些soa相关的资料,都会多多少少提到docker,本人表示很好奇,特此来研究下

所以本文主要附上一个傻瓜教程。以及把配置中需要注意的点说一下。

在阅读本文之前建议先看上面的两篇参考文章

文中没有详细解说的内容均可在参考文章中查到

第一步:安装docker for windows

安装之前需要开启 Hyper-V虚拟机功能,启用方式可以自己搜索,Hyper-V 启动之后,同时也要到bios中启用cpu的虚拟化。

好吧如果你实在懒得查询的话我可以直接给你发一个百度连接:https://jingyan.baidu.com/article/15622f24017461fdfdbea554.html

直到任务管理器中的虚拟化显示开启表示成功

第二步:创建一个webapi程序

当然你可以在vs中或者随便哪里创建一个,然后将程序发布



第三步:创建Dockerfile文件

在webapi的根目录下创建一个文本文档Dockerfile.txt

内容:

# 声明使用的基础镜像

FROM microsoft/dotnet:latest

# 将本地dotnet core 应用拷贝到 容器 /app/ 目录下

COPY bin/Debug/netcoreapp2.0/publish/ /app/

# 设置工作目录

WORKDIR /app

# 设置导出端口

EXPOSE 5000/tcp

# 指定应用入口点

ENTRYPOINT ["dotnet", "/app/NetCore.dll"]

这里解释下部分参数

  • 第1行:代表程序的镜像需要依赖哪个镜像 :latest 表示镜像版本为最新的
  • 第2行:将你的程序文件夹拷贝到 镜像的app目录下
  • 最后一行:NetCore.dll是你的api的dll名称

编辑完成之后记得将文件的后缀名去掉

第三部:创建镜像

进入power shell界面

cd命令切换到webapi的根目录

执行命令:

docker build -t myapi .

注意命令中的最后一个点 代表的是命令从你的当前目录下执行

不出意外的话镜像创建完毕

然后继续执行命令运行:

docker run -it -p 5000:5000 myapi

这里的5000:5000 代表把容器内的5000端口映射到你主机的5000端口

然后 http://localhost:5000 就可以访问啦!

Windows下docker的安装,将ASP.NET Core程序部署在docker中的更多相关文章

  1. [aspnetcore]asp.net core程序部署到Ubuntu中的路径问题

    先标记下正确写法 new FileInfo(Environment.CurrentDirectory + "/Config/Log4net.config") 很多同行喜欢这样写: ...

  2. Asp.Net Core 程序部署到Linux(centos)生产环境(二):docker部署

    运行环境 照例,先亮环境:软件的话我这里假设你已经批准好了.net core 运行环境,未配置可以看我的这篇[linux(centos)搭建.net core 运行环境] 腾讯云 centos:7.2 ...

  3. ASP.NET Core教程:ASP.NET Core 程序部署到Windows系统

    一.创建项目 本篇文章介绍如何将一个ASP.NET Core Web程序部署到Windows系统上.这里以ASP.NET Core WebApi为例进行讲解.首先创建一个ASP.NET Core We ...

  4. Docker的asp.net core应用部署系列——docker pull 加速

    原文:Docker的asp.net core应用部署系列--docker pull 加速 版权声明:本文为博主原创文章,随意转载. https://blog.csdn.net/Michel4Liu/a ...

  5. Asp.Net Core 程序部署到Linux(centos)生产环境(一):普通部署

    运行环境 照例,先亮底 centos:7.2 cpu:1核 2G内存 1M带宽 辅助工具:xshell xftp 搭建.net core运行环境 .net core 的运行环境我单独写了一篇,请看我的 ...

  6. ASP.NET Core教程:ASP.NET Core程序部署到Linux

    一.前言 这篇文章我们将讲解如何将ASP.NET Core 程序部署到Linux.这里我们使用的是虚拟机里面安装的Centos7.这里的ASP.NET Core程序,以上篇文章中发布的框架依赖文件为例 ...

  7. docker多个容器连接 将 Rails 程序部署到 Docker 容器中

    在docker中使用MySQL数据库 https://yq.aliyun.com/articles/583765 将 Rails 程序部署到 Docker 容器中

  8. Windows下docker的安装,将ASP.NET Core程序部署在Linux和Docker中

    参考文章: https://www.cnblogs.com/jRoger/p/aspnet-core-deploy-to-docker.html docker for windows下载连接: htt ...

  9. ASP.NET Core 2.0 in Docker on Windows Container

    安装Docker for Windows https://store.docker.com/editions/community/docker-ce-desktop-windows 要想将一个ASP. ...

随机推荐

  1. 检测CSS属性 是否支持

    原理是:创建一个节点,判断其的style属性是否含有textOverflow属性,有则进一步判断是否支持ellipsis这个值.当遇到不支持的属性值时,浏览器会直接把这个值抛弃.因此这里就可以先给te ...

  2. Sping IOC 理解(转)

    学习过Spring框架的人一定都会听过Spring的IoC(控制反转) .DI(依赖注入)这两个概念,对于初学Spring的人来说,总觉得IoC .DI这两个概念是模糊不清的,是很难理解的,今天和大家 ...

  3. GoldenGate 传统抽取进程随 DataGuard 主备快速切换的方案(ADG 模式)

    环境描述: 1.节点描述 节点 IP 节点描述 11.6.76.221 GG 抽取端 / DG 节点,数据库版本号为 Oracle-11.2.0.3,与 11.6.76.222 组成 DataGuar ...

  4. [java基础] java中的自动装箱与自动拆箱

    自动装箱的一个例子: Integer i = 1; //实际上是执行了Integer i = Integer.valueOf(1) 自动拆箱的一个例子: Integer a =1; int b = a ...

  5. 淘宝联盟api调用笔记

    一.流程及主要请求接口 每日凌晨1点开始,服务器定时自动请求淘宝联盟数据,请求完毕之后,执行一个存储过程对数据进行整理,删除过期...购买数量<...的商品......,请求接口分别有(tbk_ ...

  6. 【Arduino】2017年电子设计大赛B题 滚球控制系统|板球系统

    今年电赛我们队伍选择的是B题,滚球控制系统.最后我们得到了省特和国一,也算是了结了我大一时的心愿吧.下面对这次比赛进行一下总结,以后回忆起来的时候也有个念想. 滚球控制系统是一个多变量.非线性控制对象 ...

  7. Python 3.X 调用多线程C模块,并在C模块中回调python函数的示例

    由于最近在做一个C++面向Python的API封装项目,因此需要用到C扩展Python的相关知识.在此进行简要的总结. 此篇示例分为三部分.第一部分展示了如何用C在Windows中进行多线程编程:第二 ...

  8. C#中的静态成员和非静态成员

    C#的类中可以包含两种方法:C#静态方法与非静态方法.那么他们的定义有什么不同呢?他们在使用上会有什么不同呢? 让我们来看看最直观的差别:使用了static 修饰符的方法为静态方法,反之则是非静态方法 ...

  9. python基础-------模块与包(三)正则表达式

    re模块正则表达式 正则表达式常用符号: [ re模块使用方法]: match(string[, pos[, endpos]]) | re.match(pattern, string[, flags] ...

  10. python 多线程批量传文件

    #!/usr/bin/env python #_*_ coding:utf-8 -*-#autho:leiyong#time:2017-06-05#version: 1.3 import parami ...