无法连接到远程sql服务器失败,Docker容器无法连接到远程服务器上的SQL Server

我有一个容器托管ASP.NET Core应用程序,但是它无法连接到远程服务器上的SQL Server。

错误是:

建立与SQL Server的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称正确,并且已将SQL Server配置为允许远程连接。

这是我已经检查过的内容:

尝试在主机和数据库服务器上禁用防火墙。 :仍然会收到错误

编辑连接字符串以使用IP和端口:仍然显示错误

从应用程序容器ping到数据库服务器:我可以正常ping到数据库服务器

通过SQL Server Management Studio连接到数据库服务器:我可以正常连接

因此,我认为容器可以看到数据库服务器,但无法连接。我还要检查什么?

非常感谢您的帮助。

更新

Dockerfile:

FROM mcr.microsoft.com/dotnet/core/aspnet:3.0 AS base

WORKDIR /app

EXPOSE 80

EXPOSE 1433

#our sql server was use this port for connect

EXPOSE 64608

FROM mcr.microsoft.com/dotnet/core/sdk:3.0 AS build

WORKDIR /src

COPY Web.API.sln ./

COPY MyProject.Core/*.csproj ./MyProject.Core/

COPY MyProject.API/*.csproj ./MyProject.API/

RUN dotnet restore

COPY . .

WORKDIR /src/MyProject.API

RUN dotnet build -c Release -o /app

FROM build AS publish

RUN dotnet publish -c Release -o /app

FROM base AS final

WORKDIR /app

COPY --from=publish /app .

ENTRYPOINT ["dotnet", "MyProject.API.dll"]

运行Docker命令:

docker build -t myproject-api:latest .

docker run -d -p 7991:80 --name myproject-api myproject-api:latest

连接字符串:

"data source=172.16.0.88\\SQL_DEV,64608; initial catalog=MyProject; persist security info=True; user id=myuser; password=mypassword;"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值