dockerが使えるなら、chef、ansibleは不要か
dockerとansible/chefでは管理する範囲が違います。
docker専用ツールは独自仮想化技術に対する管理のみですが、chef、ansibleは物理ホスト、仮想ゲスト等、広い範囲での構成管理を可能とします。
docker 仮想コンテナに対してのみの構成管理を考えているのであれば、不要という考え方もできます。
1点目。dockerの台頭により、chefやansibleはじわじわ廃れていくかどうか。
耕す畑の広さも種類も違うので、(現時点の機能を評価対象とすると)廃れることはないでしょう。
学習コスト、利便性の兼ね合いでdockerのほうが活躍するシーンが多いかもしれませんが...
2点目。dockerの方が,総合的にchefやansibleより優れているかどうか
どこにスポットを当てるかによって評価は変わってくるでしょう。
正直あまりdockerの実績ないのですが、docker限定の管理であればdocker専用ツールに旗が上がらなければいけないでしょうw(実際どうだか知りません。)
ansibleはwindowsに対しての構成管理も可能であり守備範囲が広いです。
そういう点では優れています。