分享

The issue about using Git bash for Docker in window

 JhouShuai 2018-12-10

报错:the input device is not a TTY.  If you are using mintty, try prefixing the command with 'winpty'

 

 


I recently installed Docker for Windows on my laptop. When I tried running the default docker run -it ubuntu bash demo from Git Bash, I ran into an issue I hadn’t seen before.

  1. $ docker run -it ubuntu bash
  2. the input device is not a TTY. If you are using mintty, try prefixing the command with 'winpty'
As it turns out, following the instructions and prefixing the command with winpty does work
  1. $ winpty docker run -it ubuntu bash
  2. root@88448b75631d:/#

However, I’m never satisfied with just getting around an issue, so I did some more digging. Turns out the issue here is the use of MinTTY to host the Git Bash prompt. If you’ve installed Git for Windows, you’ll recall the following configuration window.

If you select the “Use MinTTY” option, your Bash pompt will be hosted in the MinTTY terminal emulator, rather than the CMD console that ships with Windows. The MinTTY terminal emulator isn’t compatible with Windows console programs unless you prefix your commands with winpty.

Personally, I prefer the default CMD console, especially in Windows 10 where features like window resizing and text selection are drastically improved. If you want to go back to that mode, simply re-run the Git for Windows installer and chose the non-MinTTY option. If you want to stick with MinTTY, you just need to prefix your interactive Docker (and Python, and Node, and …) commands with winpty.


为了更为方便地使用Git Bash,可以在Git的安装目录中找到etc,也即“C:\Program Files\Git\etc”

找到“bash.bashrc”后,以记事本方式打开并在文件的文后追加 

 alias python='winpty python '

alias docker='winpty docker '

即可;如此则会在每次启动Git Bash时,软件会自动进行初始化配置。

 
 






原创地址:https://blog.csdn.net/m0_37728974/article/details/70313044

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多