Вы можете создать псевдотерминал без какого-либо ввода в устройство tty.Это позволяет приложению, генерирующему вывод, делать это, используя контент, распознаваемый tty устройством (например, вывод цвета).Если вы хотите иметь возможность вводить этот tty в интерактивном режиме, вам нужно передать опцию ввода из терминала с поддержкой tty (не из сценария оболочки и не из некоторых командных окон Windows), чтобы присоединить вашу консоль кstdin этого контейнера.
В качестве простого примера с docker run
эти две команды будут выглядеть по-разному:
docker run -t --rm debian ls -al --color=always
docker run --rm debian ls -al --color=always
Первая будет иметь цветной вывод, вторая не будет, и ни один из них не позволит вам ввести ввод для команды ls
, запускаемой внутри контейнера.