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

时间:2023-03-09 05:28:22
Windows下docker的安装,将ASP.NET Core程序部署在docker中

参考文章:

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

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

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

第二步:创建一个webapi程序

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

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

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

第三步:创建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 .

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

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

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

然后继续执行命令运行:

docker run -it -p 5000:5000 myapi

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

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

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