Docker で byobu を起動しようとしたら locale で怒られた
Docker 内でいろいろいじって遊んでいると複数のターミナルウィンドウが欲しくなりますが、ターミナルウィンドウを得るために docker exec
を実行するのは面倒なので byobu をインストールしました。
# apt update && apt install -y byobu
byobu をインストールした後、起動しようとしたところ、下記のように locale に UTF-8 が必要らしく、怒られました。
# byobu tmux: need UTF-8 locale (LC_CTYPE) but have ANSI_X3.4-1968
現在のロケールはこんな感じ。POSIX
が設定されている。
# locale LANG= LANGUAGE= LC_CTYPE="POSIX" LC_NUMERIC="POSIX" LC_TIME="POSIX" LC_COLLATE="POSIX" LC_MONETARY="POSIX" LC_MESSAGES="POSIX" LC_PAPER="POSIX" LC_NAME="POSIX" LC_ADDRESS="POSIX" LC_TELEPHONE="POSIX" LC_MEASUREMENT="POSIX" LC_IDENTIFICATION="POSIX" LC_ALL=
利用可能なロケールを表示したところ、C.UTF-8
があります。
# locale -a C C.UTF-8 POSIX
これを設定します。
# export LANG=C.UTF-8 # locale LANG=C.UTF-8 LANGUAGE= LC_CTYPE="C.UTF-8" LC_NUMERIC="C.UTF-8" LC_TIME="C.UTF-8" LC_COLLATE="C.UTF-8" LC_MONETARY="C.UTF-8" LC_MESSAGES="C.UTF-8" LC_PAPER="C.UTF-8" LC_NAME="C.UTF-8" LC_ADDRESS="C.UTF-8" LC_TELEPHONE="C.UTF-8" LC_MEASUREMENT="C.UTF-8" LC_IDENTIFICATION="C.UTF-8" LC_ALL=
設定後、無事に byobu
を起動できました。