如何在Docker容器中使用.NET核心访问远程URI?
我一直在试图解决这个问题,现在已经很长时间了,我一直无法find一个可行的解决scheme。
我不能得到我的XmlReader.Create(String uri, XmlReaderSettings settings)
(或XDocument.Load(String uri)
),以实现我试图使用一个远程服务的path。
这个问题很容易重现(我希望):运行一个.NET Core 2.0控制台应用程序,试图访问:
XmlReader xmlReader = XmlReader.Create("file://magic.example.com/test.xml", xmlReaderSettings);
要么
XDocument doc = XDocument.Load("file://magic.example.com/test.xml");
将其转换为Docker项目(Linux,不是Windows),然后运行它。 我发现得到的错误是:
System.IO.FileNotFoundException: 'Could not find file '/app/\\magic.example.com\test.xml'.'
破坏的要求 :我的组织使用Windows风格的文件共享,我们希望保持这一点,我可以回到FTP,但如果我这样做,这将长期以来的bug。
编辑#1:
为了在我的环境中正常工作,我已经开始使用NuGet包SharpCifs.Std
,它在Windows和Linux上都是完全稳定的。 这不是这个问题的“理想”解决scheme,但运行良好。 如果我遇到一个非基于包的解决scheme,我会再次编辑这个post。
- Dotnet核心Docker应用挂在Synology版本上
- 如何代理Docker容器中运行的一个dotnet核心应用程序的每个请求
- 在dotnet SDK和Docker容器上
- 如何将.net core web api部署到linux机器上
- 当在.net-core中执行docker化的新进程时,在linux上没有指定输出文件的Ffmpeg错误
- 保持Dotnet Core Grpc Server作为控制台应用程序运行?
- .Net Core WebApi拒绝在Docker容器中的连接
- 在Windows的Windows子系统中运行Docker中的.Net Core
- “dotnet恢复”失败,“SSL对等证书或SSH远程密钥不正确”