コマンド
docker-compose build --no-cache
なぜ
Dockerはイメージを削除しても同じDockerFileやdocker-compose.ymlでビルドする際に素早くビルドできるようにキャッシュを持っています。
キャッシュは以下のコマンドで見ることができます。
$ docker system df
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 0 0 0B 0B
Containers 0 0 0B 0B
Local Volumes 104 0 13.12GB 13.12GB (100%)
Build Cache 348 0 21.32GB 21.32GB
このキャッシュはDockerFileやdocker-compose.ymlの変更は見てくれますがそれ以下のレイヤーは見てくれません。
なので変更が反映されないということが起きます。