IaC example is a simple example of Infrastructure as code (IaC) to automate a development environment based on Vagrant and a staging, production environment on AWS. The installation creates a basic Symfony application along with a PostgreSQL, Solr and Redis services. Ansible helps automate all the infrastructure tasks and the bash scripts act as a wrapper for the Ansible commands.
- Install Vagrant and clone this repo.
vagrant upto start installation
- The installation will provision 2 boxes
services, you can retry provisioning using
vagrant provisionif it failed.
- After provisioning the vagrant boxes you should access the symfony project on
192.168.33.31which is a basic symfony example project.
solrservices are on the
- Root is
- MyProject IP is
- Services IP is
AWS provisioning (AWS will charge you for launching services)
- Login vagrant
vagrant ssh myproject
- Change the password and ssh key to yours and remove the prod_files from your repo
- Add the production password and ssh keys to vagrant
- Encrypt your AWS keys as shown on
- Go to
./aws-infrastructure.shto start building the infrastructure on AWS.
- Edit the deploy script
roles/deploy-application/files/myproject/deploy.shto fit your requirements.
Visit on Github