Get this app up and running on a Vagrant VM using your known production best practices as well as the instructions in the guidelines below.
You should use provisioner to install and configure everything. Ansible is preffered. But you can use chef or puppet if you more familiar with those tools. (please don't use shell provisioner).