目录
记录Docker的-v指令使用引言
之前我浅学了一下docker,便捷布署.net项目(布署的是打包以后的项目)
dockerfile文件如下:
FROM mcr.microsoft.com/dotnet/ASPnet:6.0 AS base WORKDIR /app EXPOSE 5031 EXPOSE 7031 FROM mcr.microsoft.com/dotnet/sdk:6.0 AandroidS build WORKDIR /src COPY . . ENTRYPOINT ["dotnet", "Personalblog.dll"]
之后下载镜像,创建容器,都是使用的如下命令:
docker build -t app . docker run -d -p 80:80 --name app app
问题出现
若果只是简单的使用前面的命令.net程序使用docker,是可以正确的布署项目,并且会出现一个问题,就是我项目假如更新了的话。我须要先删掉容器,还要删掉镜像能够重新布署。假如我只是单纯的删掉容器重新布署的话,项目是不会更新的。
为何会出现这个缘由呢?
就是由于我没有挂载目录,docker默认挂载了一个随机名的目录.net程序使用docker,假如我不删掉镜像,无论我创建多少个容器,项目还是不会变。
问题解决
怎么解决这个问题,很简单,只须要使用-v指令就行了
如下:
docker phprun -d -p 80:80 -v 项目路径:python/src --name app app
这样子布署容器以后,镜像中都会将挂载路径指向你的项目路径linux系统下载,这样子每次项目更新只须要删掉容器,之后重新创建容器即可。
注意:这是项目,挂载路径为/src,其他的项目还没了解,我试着改过这个挂载路径,并且不太行,创建容器的时侯linux 下载,容器中会手动给你创建一个src目录,假如有解决办法可以评论该篇文章,急切希望诸位大鳄解答我的苦恼。
扩充
可以使用dockerinspect镜像名查看挂载路径,找到Mounts查看挂载信息。
到此这篇关于.Net布署Docker-v指令使用的文章就介绍到这了,更多相关Docker-v指令使用内容请搜索我们曾经的文章或继续浏览下边的相关文章编程酒店希望你们之后多多支持我们!
本文标题:.Net布署Docker-v指令使用解读