I have separate Docker (1.9.1) images for Hadoop (2.7.1) namenodes and datanodes. I can create containers from these and have them communicating over a user-defined Docker netwo
This is caused by a known docker issue (I also raised - and closed - this duplicate which describes the steps as set out in the question).
There is a merged pull request which should fix the problem and is scheduled for inclusion in Docker 1.10.0. But in the meantime, the following workaround can be used:
sudo docker network rmsudo service docker stopsudo iptables -F && sudo iptables -F -t natsudo service docker start