我正在尝试连接到 Microsoft SQL Server docker 容器并从代码迁移数据库。
但是我收到以下错误:
SQL 服务器。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。 (提供程序:TCP 提供程序,错误:40 - 无法打开到 SQL Server 的连接:无法打开到 SQL Server 的连接)'
我的连接字符串:
"CatalogDbConnectionString": "Server=tcp:127.0.0.1,1433;Initial Catalog=CatalogDb;User Id=sa;Password=Passw@rd"
docker-compose.override.yml:
catalogdb:
environment:
- SA_PASSWORD=Passw@rd
- ACCEPT_EULA=Y
ports:
- "1433:1433"
volumes:
- /var/opt/mssql
节目:
using (var scope = app.Services.CreateScope())
{
var context = scope.ServiceProvider.GetRequiredService<CatalogDBContext>();
var env = scope.ServiceProvider.GetRequiredService<IWebHostEnvironment>();
var settings = scope.ServiceProvider.GetRequiredService<IOptions<CatalogSettings>>();
var logger = scope.ServiceProvider.GetRequiredService<ILogger<CatalogDBSeedData>>();
context.Database.Migrate();
new CatalogDBSeedData().SeedAsync(context, env, settings, logger).Wait();
}
删除tcp:127.0.0.1,写入host.docker.internal