The Compose file describes the
container in its running state, leaving the details on how to build
the container to Dockerfiles.
http://deninet.com/blog/1587/docker-scratch-part-4-compose-and-volumes
When you define your app with Compose in development, you can use this
definition to run your application in different environments such as
CI, staging, and production.
https://docs.docker.com/compose/production/
It is also seems that Compose is considered production safe as of 1.11, since https://docs.docker.com/v1.11/compose/production/ no longer has a warning not to use it in production like https://docs.docker.com/v1.10/compose/production/ does.