This allows to create basic LAMP development environment in a virtual machine managed by Vagrant and Salt.
- Curl (to do the installation)
- VirtualBox
- Vagrant > 1.1
- Salty Vagrant Plugin
- Vagrant Hostmanager Plugin
Reading about Virtualbox, Vagrant and Salt is highly recommended. Basic understnading of YAML will help to in order to modify the settings files
- Vagrant VbGuest (Highly recommended for the VM to get the latest VirtualBox Guest Additions intalled automatically)
- Vagrant Shell Commander
- Vagrant dnsmasq
- Vagrant Box Updater
See list of more plugins at: https://github.com/mitchellh/vagrant/wiki/Available-Vagrant-Plugins
curl -L https://github.com/davidlonjon/vagrant-salt-lamp/archive/master.tar.gz | tar zx
Go into the extracted directory
cd vagrant-salt-lamp-master
Edit settings.yml & ./shares/srv/pillar/settings.sls to be specific to your project
vi settings.yml
vi ./shares/srv/pillar/settings.sls
Run vagrant
vagrant up
SSH into your newly created virtual machine
vagrant ssh
in which you should have a full LAMP stack.
By default:
A Vagrant/Virtualbox virtual machine installed with Ubuntu Precise64
Inside the VM:
- Default tools:
- git
- curl
- vim
- tmux
- screen
- htop
- mytop
- nmon
- perl and perl libraries which will allow to install manually innotop
- Apache
- MySQL
- php
- phpMyAdmin
- Removal of hosts entries on host machine does not seems to work
Only been test on MAC (Tested on Lion OSX 10.8.4) as host and Ubunut Precise64 (12.04) as guest.
It is unlikely to work on Windows.
Possible add the following to the setup:
- Jenkins
- Redis
- Postfix
- Jasmine
- Karma Test Runner
- Coffeescript
- Express HTTP
- dnsmasq
This project and code have been directly inspired by or copied from: