14.04 docker 内部“未设置 TERM 环境变量”

vrm*_*rms 5 command-line bash environment-variables

我在 docker 容器内运行 ubuntu 14.04。我的镜像是从官方 ubuntu:14.04 镜像构建的)Docker 文件与这个https://github.com/pfy/erpnext/blob/master/Dockerfile几乎相同(只是从 debian:wheezy >>> FROM ubuntu 更改: 14.04)。

ERPNext正在使用此脚本安装https://raw.githubusercontent.com/frappe/bench/master/install_scripts/setup_frappe.sh)。

在这里可以找到构建和运行指令https://raw.githubusercontent.com/pfy/erpnext/master/README.md

不知何故它正在工作,但终端/控制台似乎不能完全正常工作。

"TERM environment variable not set"当我尝试clear屏幕时得到一个。我发现其他一些帖子具有相同或相似的错误消息,但上下文总是不同的,所以我无法从提供的解决方案中获得任何信息。

我猜 docker ubuntu 图像可能会经常使用,所以也许有人遇到并解决了这个问题。

Sco*_*and 4

启动容器后无需编辑配置,您可以在运行基于 debian 的容器时定义缺少的环境变量

-e TERM=xterm 
Run Code Online (Sandbox Code Playgroud)

如本例所示

export DUMMY_SERVER_NAME=itswednesday

docker run \
  -d \
  --name $DUMMY_SERVER_NAME \
  -e TERM=xterm \
  --expose=80 \
  debian /bin/bash -c "while [[ true ]]; do sleep 1; done"
Run Code Online (Sandbox Code Playgroud)


vrm*_*rms 1

感谢来自这的评论Gunnar Hjalmarsson似乎解决了这个问题

docker start [container]
docker exec -it [container] bash
vim /etc/bash.bashrc
Run Code Online (Sandbox Code Playgroud)

添加export TERM=xterm到文件顶部,停止/重新启动我的容器...

瞧!...终端似乎表现“正常”(我使用clear以前不起作用但现在可以的命令进行了测试)

再次感谢并抱歉在我的原始帖子中引入了误导性术语(终端/控制台)。