This project builds a Ruby on Rails-based app inside a VM, using Passenger and Nginx to run the app. It is meant as a demonstration of web application deployments (in this case, a Rails-based app) using Ansible.
- Download and install VirtualBox.
- Download and install Vagrant.
- [Mac/Linux only] Install Ansible.
- Run
ansible-galaxy install -r requirements.yml
in this directory to get the required Ansible roles. - Run
vagrant up
to build the VM and deploy the version of the app specified inplaybooks/vars.yml
.
Once the VM is built, you can visit https://192.168.33.7/
(or whatever domain name you point to that IP address in your local hosts file) to view the demo app.
The first 'production' release of this demo app is version 2.0.1
, which includes a basic interface for viewing and managing Articles. Subsequent releases can be deployed by incrementing the app_version
in playbooks/vars.yml
, then running the Ansible provisioner again with vagrant provision
.
Some notable releases you could test:
2.0.1
: First stable release with Article CRUD deployable on modern Ruby versions.2.1.0
: Includes a fancy new header with a linear gradient background. Marketing is happy.
This project was created by Jeff Geerling as an example for Ansible for DevOps.