我已经将模板用于在Linux上的Docker中运行的 ASP.NET Core Web API应用程序。
它似乎运行良好,直到它需要访问我的 Sql Server(在我的网络上运行(。 当它尝试这样做时,我收到以下错误:
建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。找不到服务器或无法访问服务器。验证实例名称是否正确,以及 SQL Server 是否配置为允许远程连接。(提供程序:TCP 提供程序,错误:35 - 捕获内部异常(
内部例外说:
没有这样的设备或地址
我已经读到使用以下命令运行 docker :--net=host
可以让您的容器访问您的网络。 但是我似乎找不到使其与Visual Studio的集成一起工作的方法(按F5或> Docker
工具栏按钮开始运行和调试(。
如何与Visual Studio,Docker和Linux建立网络?
原来是我的连接字符串。 在Windows和IIS Express上运行时,我可以将服务器名称放在我的连接字符串中。
在 Linux 容器上运行时,我需要完全限定的域名 (fqdn( 作为服务器名称。
一旦我这样做了,它就工作得很好。