You can ensure that your environment is more easily reproducible by using scripting and virtualization, in addition to documentation.
You can create environment instances by using Chef scripts to automate installation. For more information about Chef, see Chef.