Vagrant
Теория: Инициализация
Vagrant предполагает, что мы создаем отдельную конфигурацию на каждый проект, а не одну на все. Инициализация выполняется в директории соответствующего проекта:
В результате выполнения этой команды Vagrant создаст файл Vagrantfile. Внутри файла описана конфигурация виртуальной машины на языке Ruby. Не страшно, если вы не знакомы с ним, содержимое файла интуитивно понятно, а документация Vagrant достаточно подробна.
Vagrantfile нужно добавить в git-репозиторий, благодаря этому мы получим одну конфигурацию для всех разработчиков. Помимо Vagrantfile, в процессе работы Vagrant создаст директорию .vagrant в корне проекта. Эту директорию нужно добавить в .gitignore.
Запуск и остановка
Старт выполняется командой vagrant up. Она скачивает образ ubuntu/focal64, создает на его основе виртуальную машину внутри VirtualBox и запускает ее. Первый запуск займет какое-то время пока все скачается и настроится. Затем команда начнет отрабатывать за десятки секунд, время нужное на старт операционной системы внутри виртуальной машины.
Запущенная машина потребляет немало ресурсов. После работы с проектом имеет смысл останавливать машину с помощью команды vagrant halt.
Чтобы узнать текущий статус машины, запущена она или нет, можно воспользоваться командой vagrant status:
Для полного уничтожения машины есть команда vagrant destroy. После этого ее можно создать заново командой vagrant up.



