我尝试从我的Asp.Net Core应用程序连接到我使用docker运行的MSSQL,但是我收到了错误消息:
"发生与网络相关或特定于实例的错误 建立与SQL Server的连接。找不到服务器或 无法访问。验证实例名称是否正确 SQL Server配置为允许远程连接。 (提供者:TCP 提供者,错误:35 - 发现内部异常)"
这是我的码头工作者:
api:
image: api
container_name: api
build:
context: ./Api
dockerfile: Dockerfile
ports:
- "8000:80"
depends_on:
- db
db:
image: "microsoft/mssql-server-linux"
container_name: mssql
environment:
SA_PASSWORD: "YourStrong!Passw0rd"
ACCEPT_EULA: "Y"
MSSQL_PID: "Developer"
ports:
- "127.0.0.1:8001:1433"
和appsettings.json:
{
"ConnectionStrings": {
"DefaultConnection": "server=127.0.0.1,8001;database=MyTestDb;user=sa;password=YourStrong!Passw0rd"
}
}
通过SSMS连接效果很好,但在我的代码中我尝试使用:
Database.EnsureCreated();
我收到了上述错误。
你知道我该怎么处理这个问题吗?
答案 0 :(得分:1)
您的问题是连接字符串
rejoin: func [
"Reduces and joins a block of values - allows /with refinement."
block [block!] "Values to reduce and join"
/with join-thing "Value to place in between each element"
][
block: reduce block
if with [
while [not tail? block: next block][
insert block join-thing
block: next block
]
block: head block
]
append either series? first block [
copy first block
] [
form first block
]
next block
]
在docker-compose容器到容器网络中,您关注容器本身暴露的容器服务名称和端口。您不希望从容器内部考虑主机端口映射。使用以下连接字符串
{
"ConnectionStrings": {
"DefaultConnection": "server=127.0.0.1,8001;database=MyTestDb;user=sa;password=YourStrong!Passw0rd"
}
}