Using Vagrant to deploy Laravel box

I’ve building a personal project in Laravel for maintaining my bookmarks. I’ve been toying with this for some time and I’m now ready enough to deploy it to VPS somewhere. This so I can open it up for beta testing by others then me myself. But how to deploy in a repeatable fashion that is easy. I could use ready made setups, like Envoyer, but they all cost money to keep them running and for a simple hobby project I find this overkill.

For local development there is an easy solution to get a VPS running (using virtualbox), it’s called Homestead and is a lifesaver (and time saver). It uses Vagrant to give you a box complete with all the software configured and using shared folders syncing all the coding developments with your local filesystem. You can work on your local filesystem and test the output on the VPS.

So I started looking at using Vagrant for creating a test and production box which looked similar to Homestead but as simple as possible for my needs. I found many setup’s on how to create your own VPS with Vagrant and I think I’ve got it almost nailed to get a machine up and running using Vagrant with shell scripts where I can test and deploy my own project. I might release it when I’m satisfied and documented it just enough to maintain/eaplain it.