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

Windows10系统GitBash执行docker run报输入设备不是TTY如何解决

Windows 10 GitBash Docker TTY 报错排查方案

前置确认

你已经确认了端口运行正常、Ubuntu镜像拉取正确,直接按以下步骤排查:

  • 第一步:验证winpty可用性
    在GitBash中执行which winpty,如果没有返回有效安装路径,说明你安装的Git for Windows缺失winpty组件,可重装Git for Windows,安装过程中勾选「Enable experimental support for pseudo consoles」选项,即可自动安装winpty。
  • 第二步:校验Docker后端兼容配置
    打开Docker Desktop设置页:
    • 若使用WSL2后端:进入「Resources > WSL Integration」,确认你正在使用的WSL发行版(如果是原生Windows GitBash则无需调整)的集成开关已开启,修改后重启Docker生效
    • 若使用Hyper-V后端:进入「Features in development」,关闭「Use WSL 2 based engine」选项,重启Docker后重试
  • 第三步:修正执行命令
    执行命令时不要带前缀$符号,同时可以尝试去掉.exe后缀,测试如下命令:
    winpty docker run -it --rm ubuntu:14.04 /bin/bash
    
    部分环境下还可以临时修改终端类型后重试:
    export TERM=xterm
    winpty docker run -ti ubuntu:latest bash
    
  • 第四步:配置永久生效规则
    如果测试成功,可在GitBash中执行以下命令设置别名,后续无需手动加winpty前缀:
    echo "alias docker='winpty docker'" >> ~/.bashrc
    source ~/.bashrc
    
  • 第五步:备选替代方案
    如果以上步骤都无法解决,可直接使用Windows Terminal、系统自带PowerShell执行Docker交互命令,无需添加winpty前缀即可正常运行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 14:54:03