本文告訴大家,如何解決 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
博客園博客只做備份,博客發布就不再更新,如果想看最新博客,請到 https://blog.lindexi.com/

本作品采用知識共享署名-非商業性使用-相同方式共享 4.0 國際許可協議進行許可,歡迎轉載、使用、重新發布,但務必保留文章署名[林德熙](http://blog.csdn.net/lindexi_gd)(包含鏈接:http://blog.csdn.net/lindexi_gd ),不得用于商業目的,基于本文修改后的作品務必以相同的許可發布,如有任何疑問,請與我[聯系](mailto:[email protected]),
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/379024.html
標籤:.NET技术
