您好,我正尝试在包含以下内容的docker image
主机文件夹中重新创建:
.NET app
的文件夹)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
文件。
我在做什么错了?
答案 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文件夹。希望这可以帮助 让我知道您是否有任何疑问