Docker Exec -it bashterminal输出格式不正确

运行docker exec -it ... bash之后的命令promp没有很好地格式化。 问题发生在OSXterminal或iTerm2上。 iTerm2的任何设置我需要改变或者是与bash命令有关? 谢谢。

图片: 在这里输入图像说明

我想我可以从图片中知道你实际上并没有谈论docker logs (这是一个你没有运行的docker真正的docker命令)。 它看起来像你想知道为什么你的控制台输出不打印与格式漂亮后到达一个容器内的命令提示符docker exec -it ... bash

我怀疑你的PS1长度在容器内或主机上计算不正确。 在这里阅读。 容器内的提示看起来像标准提示,主机上的提示看起来很奇怪,所以我敢打赌,你的OS X主机上的PS1有问题。

要查看您的主机是否导致问题,请使用最小的PS1进入子shell,然后运行Docker并查看问题是否存在:

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

如果问题消失,则说明主机上的PS1存在问题。 按照上面链接中的指示永久修复,以便长度正确计算。