Vagrant
2026-02-26 20:11 Diff

Vagrant предполагает, что мы создаем отдельную конфигурацию на каждый проект, а не одну на все. Инициализация выполняется в директории соответствующего проекта:

В результате выполнения этой команды Vagrant создаст файл Vagrantfile. Внутри файла описана конфигурация виртуальной машины на языке Ruby. Не страшно, если вы не знакомы с ним, содержимое файла интуитивно понятно, а документация Vagrant достаточно подробна.

Vagrantfile нужно добавить в git-репозиторий, благодаря этому мы получим одну конфигурацию для всех разработчиков. Помимо Vagrantfile, в процессе работы Vagrant создаст директорию .vagrant в корне проекта. Эту директорию нужно добавить в .gitignore.

Запуск и остановка

Старт выполняется командой vagrant up. Она скачивает образ ubuntu/focal64, создает на его основе виртуальную машину внутри VirtualBox и запускает ее. Первый запуск займет какое-то время пока все скачается и настроится. Затем команда начнет отрабатывать за десятки секунд, время нужное на старт операционной системы внутри виртуальной машины.

Запущенная машина потребляет немало ресурсов. После работы с проектом имеет смысл останавливать машину с помощью команды vagrant halt.

Чтобы узнать текущий статус машины, запущена она или нет, можно воспользоваться командой vagrant status:

Для полного уничтожения машины есть команда vagrant destroy. После этого ее можно создать заново командой vagrant up.