- A+
所属分类:.NET技术
本文告诉大家,如何解决 csproj 项目文件放入到里层的文件夹,不放在 sln 所在文件夹的第一层子文件夹,导致 VisualStudio 2022 在构建 docker 映像提示找不到文件的问题
在 VisualStudio 里面,可以右击 docker 文件,进行生成映像。这是默认需要此 csproj 项目文件放入到 sln 所在文件夹的第一层子文件夹里面,而如果有一些定制化的需求,放入到其他的文件夹(依然在 sln 所在的文件夹的子文件夹里面)那就需要设置 DockerfileContext 属性,告诉 Visual Studio 生成时的 Docker 映像时使用的默认上下文
如下面文件结构
| | Foo.sln |-----A |-----B |-----B.csproj
此时就需要在 B.csproj 上放一个 DockerfileContext 属性,此属性的作用是生成 Docker 映像时使用的默认上下文,作为相对于 Dockerfile 的路径
<PropertyGroup> <DockerfileContext>....</DockerfileContext> </PropertyGroup>
通过此属性,才能让生成的路径是从 sln 文件开始,也就是默认生成的值。一个推荐的做法是自己删除 Dockerfile 文件,重新在 VisualStudio 里面右击添加
更多 docker 相关属性,请看 Visual Studio 容器工具生成属性 - Visual Studio (Windows) Microsoft Docs