dockerのコンテナで特定のコマンドが実行できない時
目次
概要
dockerのコンテナ上で、リソースの状況を見たいと思い、topコマンドを実行したら次のようなメッセージが表示されてtopコマンドが使えませんでした。
TERM environment variable not set.
この解決方法がわかったので紹介します。
原因
メッセージの内容から、TERMという環境変数に値が設定されていないということが分かります。
TERMという環境変数は、調べてみると利用している端末の種類を指定するもののようです。
なぜTERM変数があるのかというと、一部の文字が端末によって意味が変わるため、あらかじめTERM環境変数で利用している端末の種類を指定して、それらの意味が正しく理解されるようにするためのようです。
なので、TERM環境変数を指定すれば、この問題は解決します。
解決方法
では、TERM環境変数に値を設定しましょう。
export TERM=xterm
ほとんどの環境では、xterm
を指定すれば良いと思います。
さいごに
これで、topコマンドが使えるようになりました。