欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

在Windows上使用Docker运行.NetCore

程序员文章站 2022-03-13 17:45:48
今天我们来说下如何在windows下使用docker运行.net core,既然是docker,那么我们首先得在windows上安装docker。 在Windows安装 docker 有两种选择 :1、docker for windows2、docker toolbox 区别:docker for ......

今天我们来说下如何在windows下使用docker运行.net core,既然是docker,那么我们首先得在windows上安装docker。

在windows安装 docker 有两种选择 :
1、docker for windows
2、docker toolbox
区别:
docker for windows-64位windows 10、必须开启 hyper-v
docker toolbox -有virtualbox即可

今天只给大家介绍 docker for windows安装

地址:https://download.docker.com/win/stable/docker%20for%20windows%20installer.exe

我们下载按照步骤一步步安装就ok了,安装之后打开可能会出现一个错误,如果没有出现那肯定万事大吉咯!

hyper-v 没开不能启动:
以管理员身份打开 powershell 控制台。
运行以下命令:

enable-windowsoptionalfeature -online -featurename microsoft-hyper-v -all

 

现在我们再来启动即可,在右下角也会有一个图标,悬浮上去显示 docker desk is running,表示已经安装成功(这个会提示我们登录,不过登录不登录问题都不是太大,登录之后可以连接到(docker hub)

接下来正式进入我们今天的主题,如何而使用 docker for windows 来运行 .netcore(start)

首先我们创建一个.net core web项目

在Windows上使用Docker运行.NetCore

然后我们去项目根目录去看,会发现有一个dockerfile的文件,同样我们需要在项目当中修改dockerfile文件的属性,修改为较新则复制。 

在Windows上使用Docker运行.NetCore

 

 

我们可以运行一下.net core看一下出来的页面效果,到现在我们需要的.net core的事例已经准备好了,我们现在开始在docker 中部署了。
我们打开powershell ,输入 docker info 出现下面的界面的样子证明docker 一切正常。

在Windows上使用Docker运行.NetCore

我们进入到我们刚刚创建的.net core 项目的根目录,然后开始构建docker镜像,要注意命令后面的那个 . ,意思是当前目录

docker build -t demotest .

然后我们发现在执行到第六步的时候报错了,说什么在该路径找不到该文件

在Windows上使用Docker运行.NetCore

我也卡在这里卡了很久,最后发现路径拼接起来不对。我们仔细检查下dockerfile文件的第六步发现文件路径是dockertest/dockertest.csproj,再结合我们当前路径是e:\docker\dockertest
\dockertest,组合一来看,多了一个dockertest,然后我们修改dockerfile文件中的路径去掉这个多的dockertest/

然后我们再来执行docker build -t demotest .然后发现我们在第10步的时候又出错了,说这个程序不包含适合入口点的静态'main'方法,我们继续检查下dockerfile文件,发现第9步那个工作路径
是/src/dockertest,我们拼接一下发现,又多了一个/dockertest,我们接着继续去掉这个,然后继续运行docker build -t demotest .

这一次终于不负众望。它完整的运行完成了所有的步骤并且提示了

successfully built eaa8cea8fcf4
successfully tagged demotest:latest

我们来看看构建镜像是否真的成功了吧

docker images

在Windows上使用Docker运行.NetCore

我们发现了这一个,是我们刚刚创建的demotest,既然镜像我们已经创建成功了,那我们正式运行起来看看是否可用。

docekr run --name=demotest -p 7778:80 -d demotest
--name:指定容器名称
-p:指定容器端口
-d:指定容器 后台运行

然后出现了一串字符串,说明我们启动成功了,然后我们查看一下我们正在运行的容器

在Windows上使用Docker运行.NetCore

docker ps

在Windows上使用Docker运行.NetCore

然后我们去浏览器输入ip+7778,看到如下页面证明这次docker for windows  +.net core 成功运行了。

在Windows上使用Docker运行.NetCore

那么到这里我们的第一的windows+docker运行.netcore算是正式完工了,然后在给大家介绍一些较为常用的docker命令(命令)

docker build -t demotest .    构建 demotest镜像
docker images                      查看当前所有的镜像
docker inspect demotest     查看 运行容器的详情
docker ps                         查看当前运行的容器
docker ps -a                      查看当前所有的容器
docker stop demotest      停止运行demotest容器
docker start demotest     开启运行demotest容器
docker rm demotest     删除demotest容器
docker rmi demotest    删除demotest镜像
docker rm $(docker ps -aq)     删除所有容器
docker rmi $(docker images -q)   删除所有镜像

 

 

 

 

 

 

在Windows上使用Docker运行.NetCore