久しぶりに来たら squash の話してるけどすでに実装されてるぞ。
ただし、Experimental。

仕組みとしては、通常のbuildをしてできたイメージを1layerにする処理がまた走る。
内部的にはイメージが2つできる感じ。
手元のディスク容量的には損だけど、squash 前の繰り返しする場合に
レイヤーが再利用されるのでそういう面で便利。

使い方は、docker daemon を experimental オプションつけて起動して、
docker build --squash -t foo .

次の 17.03 か 17.04 あたり(バージョニングルールが変わった)で experimental 外れるんじゃないかな