通过执行 /bin/bash 运行基于 CentOS 的基本 docker 容器会显示登录信息,但不允许以预期的方式按回车键。按回车键只是开始一个新行,而不是执行输入行。
我在同样的情况下使用sudo docker run -t mycentos /bin/bash
同时也使用结果。sudo docker attach d7043c61fcbe
一旦我连接到容器,我就会看到,[root@d7043c61fcbe /]#
所以我认为一切基本上都是正确的。
Docker 本身在 ubuntu 上运行,我使用默认的 XFCE 终端来发出我的 docker 命令。
[更新]
只是为了给你说明一下我看到了什么以及发生了什么:
docker run -t mycentos /bin/bash
[root@d7043c61fcbe /]#<cursor>
+ 按键盘上的 L 键和 S 键[root@d7043c61fcbe /]#ls<cursor>
+ 按键盘上的 Enter 键[root@d7043c61fcbe /]#ls
<cursor>
因此,您会看到按下 Enter 键允许输入新行,而不是 bash 实际执行 ls 命令。此行为使 bash 变得毫无用处。附加到容器也是如此。如果不使用 bash,很难更改容器以提交它……。
再次强调,这是在 Win7 上运行的 VirtualBox 上最新安装的 Ubuntu。我使用的是最新安装的 docker。
docker 的其余部分运行顺畅(启动/停止/运行容器、创建图像等)