Dockerfile tar error: tar: Cowardly refusing to create an empty archive

Dockerfile tar error: tar: Cowardly refusing to create an empty archive

我正在尝试使用查找和 tar ubuntu 命令来 select 项目中的所有 csproj 文件(以一种优雅的方式),这样我就可以 运行 Docker 文件中一层的 dotnet restore(与构建解决方案分开)。

我已阅读此处的这些解决方案并正在尝试让它们发挥作用。

https://andrewlock.net/optimising-asp-net-core-apps-in-docker-avoiding-manually-copying-csproj-files-part-2/

但是,我使用第一种方法时总是出错:

tar: Cowardly refusing to create an empty archive
Try 'tar --help' or 'tar --usage' for more information.

我不明白为什么会这样 - 当 运行 在 dockerfile 中时,find 命令似乎没有找到任何文件。当我 运行 在我的磁盘上本地查找命令时,它正在按预期查找 csproj 文件。看这里:

https://github.com/ossentoo/dockerbuildtest/runs/3850694961?check_suite_focus=true

谁能看出问题出在哪里?也许你可以向我发送拉取请求?

我的示例请看这里。

https://github.com/ossentoo/dockerbuildtest

谢谢

这显然意味着您的 Docker 中没有 *.csproj 文件 图片。问题是 RUN 命令在你的内部 运行 图片,不在您的主机上,因此您必须将 *.csproj 添加到您的图片中 第一.