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에 추가합니다. 다음과 같이 세 가지 표준 스트림( STDIN, STDOUT, ) STDERR중 에 연결할 것을 지정할 수 있습니다.

$ 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

관련 정보