我可以像这样打开一个交互式的 shell 进入 Docker 容器:
sudo docker exec -t -i {container_name} bash
目前为止一切顺利,但尝试运行nano
时出现以下错误:
打开终端时出错:未知错误。
我可以像这样打开一个交互式的 shell 进入 Docker 容器:
sudo docker exec -t -i {container_name} bash
目前为止一切顺利,但尝试运行nano
时出现以下错误:
打开终端时出错:未知错误。
-t
)。export TERM=xterm
)TERM=xterm-color
对我有效。serverfault答案。 - mdisibio运行命令:export TERM=xterm
。
ENV TERM xterm
如果您经常使用编辑器,请将此设置添加到Dockerfile中。我们在基本容器中设置了此项,因为我们经常使用vi/emacs调试。
docker exec -it [CONTAINER_ID] /bin/bash -c "export TERM=xterm; exec bash"
命令时可以正常工作,但是其他方式不行。我在 EXPOSE
语句之前添加了 ENV TERM xterm
,这样做正确吗? - Lukas OppermannRUN
命令之前添加ENV TERM xterm
。 - Lukas Oppermanndocker exec -it id_container bash
apt-get update
apt-get install nano
export TERM=xterm
如果 $TERM
已经设置为 xterm
但在我的情况下仍不起作用,这里有一个有效的方法:docker exec -it [CONTAINER_ID] /bin/bash -c“export TERM=xterm; exec bash”
请在您的容器中运行此命令 apk add nano
我做了一个变通方法,在我的.bashrc文件中添加了以下内容:
alias nano='export TERM=xterm && nano'
这样就不会再出现错误了。
对我来说,export TERM=xterm
导致了一些显示问题,这里有详细描述:
https://superuser.com/questions/1172222/issues-editing-files-with-nano-in-bash-windows-10
在这种情况下,export TERM=linux
可能会更好。
apt update | apt install nano
命令来在容器中安装它。