【问题标题】:Kubernetes A network-related or instance-specific error occurred while establishing a connection to SQL ServerKubernetes 与 SQL Server 建立连接时发生与网络相关或特定于实例的错误
【发布时间】:2018-08-01 13:30:56
【问题描述】:
我有在 kubernetes 上运行的 docker,该站点能够从浏览器浏览。执行请求 API 时,需要连接到数据库。
该数据库托管在 SQL Azure 上,而不是另一个 docker 上。
我收到了这个错误
在建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确,并且 SQL Server 已配置为允许远程连接。
如何排查和解决问题?
【问题讨论】:
标签:
sql-server
docker
kubernetes
azure-sql-server
azure-aks
【解决方案1】:
我找到了问题,问题是dockerFile connectionString 仍在使用appsettings.json 中的那个。
我已经通过了这样的环境
kubectl run identityapi --image xxxxxxxx.azurecr.io/panda/identity.api --port=80 --env="ASPNETCORE_ENVIRONMENT=Development" --env="ConnectionStrings__DefaultConnection=Server=xxxxxxxx.database.windows.net,1433;Initial Catalog=panda.identity;Persist Security Info=False;User ID=xxxxxxxx;Password=xxxxxxxx;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;"
ConnectionStrings__DefaultConnection 的环境必须使用双下划线而不是点 (.)