我将一个交互式shell打开到一个像这样的docker容器中
sudo docker exec -t -i {container_name} bash
到目前为止一直很好,但试图运行nano
会导致:
打开终端时出错:未知。
答案 0 :(得分:191)
我认为这可能与Docker Issue #9299有关。
在该问题中有一些解决方法:
-t
)。export TERM=xterm
)答案 1 :(得分:123)
运行命令:export TERM=xterm
答案 2 :(得分:35)
您可以添加
ENV TERM xterm
如果您将定期使用编辑器,请到您的Dockerfile。我们在基本容器中设置了这个设置,因为我们经常使用vi / emacs进行调试。
答案 3 :(得分:11)
docker exec -it id_container bash
apt-get update
apt-get install nano
export TERM=xterm
答案 4 :(得分:9)
由于$TERM
已经设置为xterm
,但仍然不适合我,这是一种有效的方式:docker exec -it [CONTAINER_ID] /bin/bash -c "export TERM=xterm; exec bash"
答案 5 :(得分:4)
我做了一个解决方法,在我的.bashrc中添加了:
alias nano='export TERM=xterm && nano'
在这种情况下,错误不再出现
答案 6 :(得分:1)
在容器apk add nano
中运行此命令
答案 7 :(得分:0)
对我来说export TERM=xterm
会导致此处描述一些显示问题:
https://superuser.com/questions/1172222/issues-editing-files-with-nano-in-bash-windows-10
在这种情况下,export TERM=linux
可能会更好。