This is Vagrant-based development environment for Drupal projects. This project is a part of a Draft Drupal project template.
- PHP (7.4+) and Composer 2
- Vagrant (2.2.6+)
- VirtualBox (5.2+)
- mkcert (optional)
Manages host and/or guest hosts
files. Draft is configured to create a hostname.test
DNS record on a host machine.
A Vagrant plugin to resize disks in VirtualBox.
Dramatically increases disk IO on Windows by adding NFS support.
-
(Optional) Locally-trusted SSL certificates
Skip this step if
mkcert
is already installed and the local CA does already exist.Install mkcert in order to get locally-trusted development SSL certificates. This tool requires no configuration. After installation just run:
$ mkcert -install
-
Add Draft Environment to the project (as a dev dependency):
$ composer require --dev lemberg/draft-environment
-
Configure guest machine by answering installer's questions. At the moment, project name (hostname) and PHP version are the only settings that can be set interactively
-
Override any variable used in any Ansible role by manually editing the
vm-settings.yml
. All available variables alongside with their default values are listed in default.vm-settings.ymlHere's the list of used roles:
- draft (internal)
- oefenweb.swapfile @ v2.0.35
- geerlingguy.mailhog @ 2.3.0
- git_config (internal)
- apache2 (internal)
- geerlingguy.mysql @ 3.5.0
- t2l.php @ 1.6.2
- t2l.composer @ 2.0.5
- t2l.java @ 1.3.3
- t2l.solr @ 2.2.2
-
Create and provision the guest machine:
$ vagrant up
-
Commit
.gitignore
,Vagrantfile
andvm-settings.yml
to lock the VM state -
Configuration can be overridden locally by creating and editing
vm-settings.local.yml
(and this file must not be committed)
Everybody loves documentation. We do too! Check this out.
Changelog can be found here CHANGELOG.md