I wrote up a post with one way to do that: http://jasonwilder.com/blog/2014/03/25/automated-nginx-rever...
You can try nginx-proxy that wraps up the approach in a docker container. See https://registry.hub.docker.com/u/jwilder/nginx-proxy/.
Run that on your host and start your other containers on the host with VIRTUAL_HOST env variables and it will set up virtual host mappings via nginx automatically.