Vagrant
Теория: Настройка окружения
Помимо унификации и изоляции окружения, Vagrant позволяет автоматизировать настройку виртуальной машины под конкретный проект. Что сюда входит? Обычно для работы проекта нужно поставить базу данных, зависимости, возможно системные пакеты и тому подобное. Все это можно делать самостоятельно после vagrant ssh, но лучше воспользоваться готовыми возможностями самого Vagrant.
Здесь стоит сказать, что Vagrant позволяет выполнять настройку большим количеством способов среди которых есть несколько наиболее удобных и распространенных. О них и поговорим.
Shell
По простому мы можем попросить Vagrant выполнить shell-скрипт при запуске виртуальной машины:
Скрипт script.sh должен лежать в корне проекта, там же где и Vagrantfile:
Затем нужно выполнить команду vagrant provision. Она возмет файл script.sh и запустит его внутри виртуальной машины:
Запуск скрипта произойдет и при выполнении команды vagrant up. Это сделано для удобства разворачивания проекта с нуля. Фактически, мы можем реализовать полную настройку всего окружения одной командой. Так мы получаем автоматизацию настройки проекта внутри виртуальной машины.



