Windowsのmingwの下でDockerのインタラクティブbash

Windowsのmingwの下でDockerのインタラクティブbash

私はWindowsでbashシェル(Mingwg64)を使用しており、dockerコンテナでbashを実行しています。

Tobi@DESKTOP MINGW64 /
$ docker run -i debian bash
ls

私が知っている限り、bash: line 1: $'ls\r': command not foundEnterキーを押すと、通常Windowsのように\rプレフィックスがあるからです。\n

この問題に対する良い解決策を知っている人はいますか?

答え1

出荷書類ビーチdocker run言う:

指定しない場合、-aDockerはstdoutとstderrに追加します。次のように、3つの標準ストリーム(STDIN、、、STDOUTSTDERRのいずれかに接続することを指定できます。

$ docker run -a stdin -a stdout -i -t ubuntu /bin/bash

対話型プロセス(シェルなど)の場合は、-i -tコンテナプロセスにttyを割り当てるために一緒に使用する必要があります。。これは通常、次の例に示すように-i -t作成されます。クライアントがパイプから標準入力を受け取るときに[...]を指定することは禁止されています。-it-t

-itしたがって、代わりに使用する必要があります-i端末レイヤーには、端末入力をターゲットシステム\r\nに変換する機会があります。\n

$ docker run -it debian bash

関連情報