how Docker and a configuration management tool like Puppet can work together?

I’m pretty new to Docker and configuration management tools.

How can Puppet and Docker work together to configure and manage Docker images and containers?