无法从Docker容器中的ASP.NET Core应用程序连接tp SQL Server数据库

时间:2019-11-05 19:33:46

标签: docker kubernetes docker-container

我创建了一个ASP.NET Core应用程序,它将使用SQL Server作为其后端,该应用程序安装在本地计算机上。我正在使用Visual Studio开发ASP.NET Core Web应用程序,并且如果我通过Visual Studio运行应用程序,则可以毫无问题地连接到SQL Server。

在Docker容器中部署应用程序后,应用程序无法与主机上安装的SQL Server通信。

我已在本地计算机上启用“ TCP”连接并启用了“高级防火墙设置”中的端口。我能够使用ipAddress和PORT(IpAddress, PORT)连接到SQL Server

下面是我用来在Docker容器中部署映像的命令:

docker run -d -p 5061:80 --name mycurrentserviceapicontainer mycurrentserviceapi --network="host"

信息:

我能够访问没有数据库连接的API,但是具有与导致问题的数据库连接相关的API。

问题:

  

连接超时已过期。登录后阶段已过超时时间。等待服务器完成登录过程并做出响应时,连接可能已超时;或者尝试创建多个活动连接时可能已超时。尝试连接到该服务器所花费的时间为-[登录前]初始化= 5;握手= 435; [登录]初始化= 0;认证= 0; [登录后] complete = 14251;

连接字符串:

  

Server = ipaddress,49172; Database = DockerDb; User = sa; Password = password; MultipleActiveResultSets = true

49172 -它是TCP端口,并且已在Windows防火墙的入站规则中启用了此端口,并能够通过Sql Server Management Studio进行连接。

我不确定为什么会遇到这个问题。我搜索了许多文章,没有任何帮助我纠正此问题。有人遇到这个问题吗?请提供您的建议。

感谢您的时间。

0 个答案:

没有答案