docker composeファイルのenvironmentに定義した値はdocker execでコンテナ内に入った場合は設定されているが sshでdockerコンテナにログインした場合には設定されていなかった。
これはdocker composeのcommandで以下を実行すると回避できる。
printenv | grep -v "HOME" >> /etc/environment
docker composeファイルのenvironmentはsshでログインしてexportを使って環境変数を定義するようなものっぽい。別セッションでログインしているユーザからは見えないんだね。。
参考: