我正在创建一个ASP。Net核心Web API与C#,。Net 7和Docker启用。当我尝试运行它使用IISExpress,它的工作很好。但是,如果我尝试运行它在Docker我得到下面的错误。
错误MSB4018 "ContainerBuildAndLaunch"任务意外失败。系统. IO.文件未找到异常:未能加载文件或程序集"Microsoft.Win32.Registry,版本= 5.0.0.0,区域性=中性,PublicKeyToken = b03f5f7f11d50a3a"或它的某一个依赖项。系统找不到指定的文件。文件名:"Microsoft.Win32.Registry,版本= 5.0.0.0,区域性=非特定,公钥标记= b03f5f7f11d50a3a",位于Microsoft. VisualStudio.容器.工具.公用.客户端.停靠路径助手. FindDockerCliPath()
我试着在我的软件包中添加"MicrosoftIdeWin32.Registry",但没有成功。如有任何帮助,我将不胜感激。
谢谢大家!
1条答案
按热度按时间osh3o9ms1#
我遇到了同样的问题。将***Microsoft.VisualStudio.Azure.Containers.Tools.Targets***的NuGet包降级到1.11.1,它开始给我实际有用的错误消息。主要的错误消息是我需要为我的项目文件夹和C:\Microsoft\Xamarin\NuGet打开文件共享(*Docker桌面设置/资源/文件共享 *),尽管最终我只是添加了C:\来覆盖所有内容。
它还说我需要将我的Dockerfile从根目录(.sln所在的目录)移动到项目目录(.csproj所在的目录)。
现在它运行良好。我甚至能够升级回1. 15,它仍然工作。如果较新的NuGet版本像旧的那样给出有用的错误就好了...