You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker Compose创建的SQL Server数据库无法通过SSMS连接求助

问题解决步骤

核心问题是你的Docker Compose配置没有为SQL Server服务暴露端口,外部工具无法访问容器内的数据库实例,按以下步骤调整即可:

1. 修改Docker Compose配置

给db服务添加端口映射,修改后的完整配置如下:

version: "3.9"
services:
    web:
        image: ${DOCKER_REGISTRY-}umbracoapp
        build: 
          context: .\umbracoapp
          dockerfile: Dockerfile
        ports:
            - "8000:80"
        depends_on:
            - db
    db:
        image: "mcr.microsoft.com/mssql/server"
        ports:
            # 可自定义宿主机端口,例如要使用1434端口就写"1434:1433"
            - "1433:1433"
        environment:
            SA_PASSWORD: "Testing1234!!"
            ACCEPT_EULA: "Y"

2. 重启容器生效

在配置文件所在目录执行命令重启服务:
docker-compose up -d --force-recreate

3. SSMS连接参数填写

打开SQL Server Management Studio,按以下参数填写连接信息:

  • 服务器名称:localhost,1433(如果自定义了宿主机映射端口,替换成对应端口即可,注意是英文逗号不是冒号)
  • 身份验证:选择SQL Server 身份验证
  • 登录名:sa
  • 密码:Testing1234!!

额外排查点

  • 执行docker ps确认db服务的容器状态为Up,没有异常退出
  • 确认宿主机对应映射端口没有被其他程序占用,端口被占用时换用其他未被占用的端口即可
  • Windows/macOS/Linux环境如果开了系统防火墙,可临时关闭防火墙测试连接是否正常

内容的提问来源于stack exchange,提问作者Funky

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 15:09:04