Devops environment with Vagrant & Puppet for PHP Projects (Symfony2, Magento, Drupal, Wordpress, ...)
- Vagrant
- VirtualBox
cd /path/to/myproject
git init
git submodule add https://github.com/John-iw2/vagrant-devops-env.git vagrant
git submodule update --init --recursive
cp vagrant/vagrantconfig.yaml ./
You can customise the file vagrantconfig.yaml and add this file in your git for your team.
box: 'Debian_7.3_32'
box_memory: 1024
box_cores: 2
box_sync: nfs #nfs|smb
project_name: 'projectname'
project_path: '/var/www/projectname'
project_webroot: '/var/www/projectname/web'
project_url: 'www.projectname.local'
project_template: 'symfony' #symfony|wordpress|drupal|prestashop|magento
If you need specific config that you don't want under git you can add a file named 'vagrantconfig_local.yaml' and add it on your .gitignore.
cd vagrant
vagrant up
vagrant provision
vagrant ssh
Failed to mount folders in Linux guest. This is usually because
the "vboxsf" file system is not available. Please verify that the guest additions are properly installed in the guest and can work properly.
Solution:
vagrant ssh
sudo ln -s /opt/VBoxGuestAdditions-4.3.10/lib/VBoxGuestAdditions/ /usr/lib/VBoxGuestAdditions
sudo /etc/init.d/vboxadd setup
exit
vagrant reload
vagrant provision
===
Using Symfony2 inside a Vagrant box is considered to be very slow, even when using NFS
Solution: Speedup symfony2 on vagrant boxes
- nginx
- mysql
- phpmyadmin
- php5
- composer
- nodejs & npm
- grunt
- bower
- elastic search
- rabbitMQ
- mongo
- redis
- capifony
- nodejs