码迷,mamicode.com
首页 > Web开发 > 详细

asp.net core中DockerFile文件中的COPY

时间:2017-12-29 15:26:23      阅读:322      评论:0      收藏:0      [点我收藏+]

标签:find   lstat   microsoft   tor   copy   pre   src   文件系统   netcore   

今天在ubuntu系统中使用docker部署asp.net core时遇到了一个问题,docker build 的时候总会在最后一步提示

lstat obj/Docker/publish: no such file or directory。

并且执行docker images查看镜像的时候发现生成的镜像的REPOSITORY和TAG都是<none>。

当执行docker run的时候提示

Unable to find image ‘crm:latest‘ locally

联想到build的时候最后一步提示的obj/Docker/publish就猜想应该是这块出现的问题。查看DockerFile,内容如下

FROM microsoft/aspnetcore:2.0
ARG source
WORKDIR /app
EXPOSE 80
COPY ${source:-obj/Docker/publish} .
ENTRYPOINT ["dotnet", "crm.dll"]

因为这个文件时vs2017自动生成的,所以平时也没注意,这里边有个COPY,里边的内容跟报错的一样,查了之后才知道当从Dockerfile 中 build Docker 镜像时候,可以选择两种指令来添加本地的目录或者文件到你的镜像中:ADD和COPY。这两种指令格式基本相同并且基本是同样的东西

ADD <src>... <dest>
COPY <src>... <dest>

在这两种情况中,目录或者文件(<src>)被复制并添加到容器的文件系统中的指定路径(<dest>)

COPY不支持URL,也不会特别对待压缩文件。如果build 上下文件中没有指定解压的话,那么就不会自动解压,只会复制压缩文件到容器中。

因为我build的时候就是在包含Dockerfile文件的目录中,只需要将文件中-obj/Docker/publish修改为-/即可

asp.net core中DockerFile文件中的COPY

标签:find   lstat   microsoft   tor   copy   pre   src   文件系统   netcore   

原文地址:https://www.cnblogs.com/liemei/p/8143823.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!