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

Windows下Docker运行SQL Server容器启动退出报错-1问题咨询

Windows环境下SQL Server Docker容器启动报Error1退出解决方法

核心故障点排查(按出现概率排序)

  • SA密码不符合复杂度要求:这是该报错最高发的诱因。SQL Server强制要求SA密码长度不低于8位,且必须包含大写字母、小写字母、数字、特殊字符四类中的至少三类,当前使用的Password仅包含大小写字母,不满足规则,会直接触发启动失败。
  • 挂载路径格式错误:Windows环境下Docker不识别/Filippo/这类Linux风格的根路径写法:
    • 若使用Docker Desktop默认的WSL2后端,Windows C盘用户目录的对应挂载路径为/mnt/c/Users/Filippo/(默认系统盘为C盘、用户名为Filippo时)
    • 若使用Hyper-V后端,直接写Windows原生绝对路径即可,格式为C:/Users/Filippo/xxx
  • 目录权限与共享配置错误:Windows下不需要执行Linux的chown授权,按以下步骤配置即可:
    1. 右键本地创建的data/log/secrets三个目录,选择「属性-安全」,给当前登录用户、Authenticated Users组分配完全控制权限后保存
    2. 打开Docker Desktop设置,进入「Resources-File Sharing」页面,勾选存放挂载目录的对应盘符,保存后重启Docker服务
  • 参数引号解析错误:Windows的PowerShell、CMD终端无法正确解析单引号包裹的环境变量参数,传-e参数时统一使用双引号,避免环境变量读取失败。

修正后的可直接运行启动命令

docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=P@ssw0rd123" --name sqlserver -p 1433:1433 -v /mnt/c/Users/Filippo/data:/var/opt/mssql/data -v /mnt/c/Users/Filippo/log:/var/opt/mssql/log -v /mnt/c/Users/Filippo/secrets:/var/opt/mssql/secrets -d mcr.microsoft.com/mssql/server:2019-latest

排查提示:如果调整后容器依然退出,直接执行docker logs sqlserver查看详细运行日志,Error1是通用启动失败提示,日志会明确标注具体故障点(权限不足/密码不合规/挂载失败等)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 18:54:22