Docker Exec -it вывод терминала bash неправильно отформатирован

Командная строка после запуска docker exec -it ... bash отформатирована неправильно. Проблема возникает на терминале OSX или iTerm2. Любые настройки для iTerm2, которые мне нужно изменить, или это связано с командой bash? Спасибо.

Изображение: введите здесь описание изображения


person Kei Yip    schedule 22.06.2017    source источник


Ответы (1)


Думаю, по картинке я могу сказать, что на самом деле вы не говорите о docker logs (это настоящая команда docker, которую вы не запускали). Похоже, вы хотите знать, почему ваш вывод консоли не печатается с хорошим форматированием после того, как вы попадаете в командную строку внутри контейнера с docker exec -it ... bash.

Я подозреваю, что ваша длина PS1 вычисляется неправильно либо внутри контейнера, либо на вашем хост-компьютере. Прочитайте об этом здесь. Приглашение внутри контейнера выглядит как стандартное приглашение, а приглашение на вашем хост-компьютере выглядит причудливо, поэтому я уверен, что у вас есть проблема с PS1 на вашем хосте OS X.

Чтобы узнать, не вызывает ли проблема ваш хост-компьютер, зайдите в подоболочку с минимальным PS1, затем запустите Docker и посмотрите, сохраняется ли проблема:

$ bash --rcfile <(echo "PS1='$ '") -i
$ docker exec -it ... bash
# ls

Если проблема исчезнет, ​​это проблема с PS1 на вашем хост-компьютере. Зафиксируйте его навсегда, следуя инструкциям по ссылке выше, чтобы длина была рассчитана правильно.

person mkasberg    schedule 22.06.2017
comment
Большое спасибо за ваш комментарий, и я попробовал ваш код, но все еще не могу отобразить сообщение в правильном формате. Как я установил oh-my-zsh для терминала. Связано ли это с настройкой oh-my-zsh? Или с какой-либо настройкой, которую я могу изменить для проверки? - person Kei Yip; 22.06.2017
comment
Кажется, я переустанавливаю докер, а затем возвращаюсь к нормальному состоянию. Спасибо. - person Kei Yip; 22.06.2017
comment
То, о чем сообщает OP, — это проблема с инициализацией TTY в некоторых версиях Docker (теперь исправлена ​​вверх по течению); вообще ничего общего со стоимостью PS1. У нас уже есть несколько ранее существовавших вопросов об этом на SO (помеченные дубликаты друг друга). - person Charles Duffy; 23.06.2017