我在中创建ASP.NET MVC Core web app
了VS 2019 with Docker support
,在EF中添加了连接字符串:
Server=169.x.x.xx;Database=ca-v2-staging;User Id=ca-v2-staging;Password=xxxx
在IIS Web App上进行调试时,连接到远程托管的数据库没有问题,但是当我从Docker运行时,Web应用程序将挂起。它不返回异常,只是挂起。
我试图在IP地址169.xxxx,1433的末尾添加端口,并执行以下代码来确定在Docker中打开的端口是否正确。为什么EF无法连接到数据库?
using (var tcpClient = new System.Net.Sockets.TcpClient())
{
try
{
tcpClient.Connect("169.x.x.xx", 1433);
Console.WriteLine("Port open");
}
catch (Exception)
{
Console.WriteLine("Port closed");
}
}
我使用VS 2019创建的默认Dockerfile,甚至添加了EXPOSE 1433 1433但没有运气。
看来问题出在SSL和Docker映像上。更改为仿生图像即可解决该问题。有关此的更多信息https://github.com/dotnet/SqlClient/issues/222
FROM mcr.microsoft.com/dotnet/core/aspnet:3.0-bionic AS base
WORKDIR /app
EXPOSE 80
FROM mcr.microsoft.com/dotnet/core/sdk:3.0-bionic AS build
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句