When my company migrated from the Cloud9 service we needed a way for our developers to work from anywhere. AWS still offers Cloud9 boxes but they weren’t as configurable as what we needed. I went through and set up an AMI to rapidly-deploy a development server and get someone going with our standards.

AWS security group
Custom security group setting in AWS for the development AMIs

I created a special security group for the EC2 instances, along with a range of elastic IPs so that the development projects could be accessed easily via computer or device. I also created instructions for anyone to set up an instance and deploy it.

Dynamic vhost config
“Magic” lines in Apache config for the dynamically served web sites, using mod_vhost_alias

I leveraged Apache’s ‘mod_vhost_alias’ module to dynamically serve any sites within the specified folder so that getting up and running was near-instantaneous. I also created a web front-end that lists the sites for easier access.

Web interface
A web interface for the dynamically served sites

This allows us to spin these up as single instances for heavy projects or to use them with the dynamic serving. We can access the development boxes from any location and pick up where we left off.