docker-compose.yml で HOSTNAME が参照できない?

docker-compose.yml$HOSTNAME と記述すると以下のようなエラーが表示され、かなりはまってしまいました。

The HOSTNAME variable is not set. Defaulting to a blank string

Ubuntu では HOSTNAME が export されていないそうなので、環境変数として参照できないようです。
どうやらかなり昔からの仕様のようですが、Ubuntu 20.04 でも状況は変わっていません。

私は誤解していましたが、HOSTNAME は環境変数ではなくシェル変数です。

そして、export されていないから環境変数として yml からは参照できないと。
なので、以下のようにすれば参照できるようになります。

$ export HOSTNAME && docker-compose up

毎回 export するのが面倒な場合は .bashrc に書いておくのがいいかもしれません。

参考 URL

Hugo で構築されています。
テーマ StackJimmy によって設計されています。