This project is no longer actively maintained, however, if you're interested in adopting it, please let us know!
Silverstripe Vagrant Development Environment
This vagrant set up builds a simple LAMP server and installs a copy of Silverstripe into the Apache web root (
/var/www) using composer.
The default ports for this box are:
|443||8443||https with snake oil certificate|
If you up a second Vagrant box with this config these ports will auto correct to 2201 - 2203, further boxes will continue to correct to 2204 and up.
This Vagrant set up is for development use only it is deliberately in-secure and designed to be easy to access and work on with no consideration given to the security implications of this. Do not put this environment on any public network or use it for configuring external web servers.
It is important to note that whilst you can build and boot up the virtual machine with just the stock command prompt, you will need MinGW (comes bundled with Git as Git Bash) or cygwin. Also backslashes are not standard delimiting characters in this environment, so when navigating to directories use a forward slash.
This assumes you have Vagrant installed already.
Git Clone or download the
ss_provision.shfiles and place them in a directory you wish to work in
ss_provision.shin a text editor and change:
Open a Terminal/MinGW Terminal/Cygwin Terminal and navigate to the folder the
vagrant upwait will this completes and don't close the window after it has
After Vagrant finishes building the box you will have a
wwwdirectory and a
id_rsa.pubfile in this directory
wwwdirectory and modify
build.xmlfurther info here
build.xmlfile and change the project name from rename-me to something more accurate
build/dependent-modules.defaultand add in any additional modules you may need more info
Now in the Terminal/MinGW Terminal/Cygwin Terminal type
Vagrant will now log in the box for you via ssh
Navigate to the Apache web root by entering
phing buildto set up the SilverStripe
Open a browser and browse to
https://localhost:8443(these ports may be different if you have multiple boxes running see above)
The default Admin log in is user: admin and password: admin
Virtual Box Networking Issue
Vagrant current has a bug when set up with VirtualBox that causes issues with VirtualBox's internal networking solution. More Info
Vagrantfile has a hack to get around this at the top of the file. If you are currently using Host-Only Adapter with VirtualBox, when running
vagrant up or
vagrant reload VirtualBoxes DHCP server will be deleted and recreated. This will cause a network drop for any running VMs but they will recover connection again when Vagrant creates the DHCP server again.
By default Xdebug is activated and configured for both Apache and CLI. To use it in most IDEs you will need to configure the project URL to
http://localhost:8080 and the Path Mapping as Remote:
In Netbeans this is done in Project Properties > Run Configuration > Advanced... > Path Mapping
Github and SSH
During the install process Vagrant generates a ssh key pair for the box and places the public key (id_rsa.pub) in your shared directory next to the
You can add this file to Github or other Git based repository to allow the box to push commits to your repository.
Alternatively if you have your own ssh key already the box is set up to support ssh agent forwarding.
Included programs and PHP extensions:
- composer (installed at
And from PEAR
- phpunit/phpunit-3.7.32 note: As of Mar'14 SS doesn't support PHPUnit 4.0