Docker Windows Client を Cygwin で動かすと tty を enable にできない件
Docker Windows Client を Cygwin で動かすと
$ docker run -t -i ubuntu bash
time="2015-04-19T10:12:43+09:00" level=fatal msg="cannot enable tty mode on non tty input"
と怒られる。
これは、既に Github に Open Issue としてあがっていた。
"cannot enable tty mode on non tty input" in Cygwin in Windows #12469
Cygwin の問題のようだ。
msysgit の bash か cmd.exe/PowerShell を使えばこの問題は発生しない。
Git\bin\bash.exe ならちゃんとコンテナ上の bash につながりました。
bash.exe"-3.1$ docker run -t -i ubuntu bash
root@57d86023f148:/#
デタッチして、コンテナIDを確認
root@57d86023f148:/# bash.exe"-3.1$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED
STATUS PORTS NAMES
57d86023f148 ubuntu:latest "bash" 12 minutes ago
Up 12 minutes pensive_ptolemy
8518a008a628 ubuntu:latest "/bin/bash" 9 hours ago
Exited (0) 9 hours ago thirsty_elion
bash.exe"-3.1$
"cannot enable tty mode on non tty input" in Cygwin in Windows #12469
を見る限り、"we'll probably need to add a hack to fix this behavior of Cygwin."ということで対応は検討中のようだが、しばらくは Docker Windows Clientを使うときには、Cygwin は使わない方が良いようだ。
ここまでには、QIITAの方 にも書いておいたけど、そもそも、Unix/Linuxの住人なので、Docker Windows Clientの有難味が今一つわかっていないのだけれど。。。