For what it's worth we (Docker maintainers) are working on adding this feature :) In the meantime you can use something like supervisord or runit inside your container.
Yeah runit is the way I think I'm going to tackle it! Cheers :)
Looking forward to it being a feature in the future. I truly think that it's a killer app for us web devs: being able to have a container setup for development, and being able to re-use it for super easy testing and one-click deployment without all the futzing around? Yes please!