无法将文件正确复制到docker image

时间:2018-12-16 21:19:21

标签: docker dockerfile docker-image

您好,我正尝试在包含以下内容的docker image主机文件夹中重新创建:

  • 发布(包含.NET app的文件夹)
  • dockerfile
  • conf.json

dockerfile

FROM microsoft/aspnetcore 
WORKDIR /app
ADD . /app
ENTRYPOINT ["dotnet","/publish/Bench.dll"]
EXPOSE 8300

当我尝试查看它使用docker exec -it <id> bash创建的内容时,它只是将publish的所有内容都放入了app内,而没有复制conf.json

我也尝试过
COPY . /app
COPY /publish /app + COPY conf.json /app无济于事。 无论我做什么,它都不会复制文件夹as-is,也不会在文件夹旁边放置json文件。

我在做什么错了?

1 个答案:

答案 0 :(得分:0)

所以我对此进行了测试。我将发布文件夹dockerfile和conf.json放在构建映像的目录中。那是关键。在这里,我使用nginx作为我的基本图像。以下是我用来构建nginx图像的命令

docker build -t test/nginx .

和dockerfile如下。因此,我使用RUN命令创建了应用程序目录。如果该目录不存在,则必须在.net中使用类似的命令来创建该目录。还请注意docker构建日志。它会告诉您重要的事情。同样,如果需要,您也可以在dockerfile中添加ls命令以列出文件夹/app中的文件。

FROM nginx
RUN mkdir /app
WORKDIR /app
ADD . /app

从创建的图像创建容器后,可以导航到/ app文件夹并查看我的 Dockerfile,config.json和其中的publish文件夹。希望这可以帮助 让我知道您是否有任何疑问