Vagrant

Vagrant – популярная надстройка над виртуальными машинами.

Официальный сайт – vagrantup.com.

Официальный сайт виртуальных машин – app.vagrantup.com/boxes/search.

Список образов виртуальных машин – vagrantbox.es.

Vagrant часто используется с VirtualBox и VMware Workstation.

Основные настройки

Vagrant имеет множество настроек и возможностей, но самые главные лежат в файле конфигурации (Vagrantfile) конкретной виртуальной машины.

Обрабатываемые порты:

Где “guest” – порт в виртуальной машине, а “host” – порт в текущей системе.

Синхронизированная (общая) директория с проектом:

В примере выше директория “project_name” синхронизирована между Windws и Linux системами.

Популярные команды

Справка по командам vagrant:

Отображение статуса vagrant:

Отображение информации о текущей установленной и имеющейся последней версии vagrant:

Пример создания виртуальной машины с Ubuntu 16.04 LTS “на борту”. Команда “init” инициализирует машину – создаст файл с настройками Vagrantfile, а команда “up” запустит виртуальную машину и, при необходимости, закачает требуемые модули. После запуска автоматически создается порт для доступа по ssh (host: 127.0.0.1, port:2222).

Получить доступ к заветной командной строке созданной предыдущей командой можно двумя способами. Через команду ssh или через какой-нибудь клиент, например, PuTTy. Ключ “private key” можно найти в одной из поддиректории “.vagrant” (путь зависит от используемой виртуальной машины, например, “..\vagrant\.vagrant\machines\default\virtualbox”) и сгенерировать ppk через PuTTyGen. В настройках PuTTy указываете “Host Name” = “127.0.0.1”, “Port” = “2222” и загружаете сгенерированный ppk в “Connection”-“SSH”-“Auth”-“Private key file for authentication”.

Выключить vagrant можно следующей командой:

Отправить виртуальную машину в “сон”:

“Разбудить” виртуальную машину:

Просмотреть все имеющиеся виртуальные машины и их расположение:

В списке виртуальных машин (“vagrant global-status”) могут быть уже удаленные или старые данные, так как используются данные из кеша при выводе. Для актуализации списка используйте параметр “–prune” для команды “vagrant global-status”:

Перезагрузка виртуальной машины (часто требуется применить изменения в файле настроек):

Перенастройка окружения (используется при изменении конфигурации):

Удаление виртуальной машины:

“id_virtual_machine” – уникальный идентификатор виртуальной машины в вашей системе. Его можно найти в списке всех виртуальных машин вашей системы – “vagrant global-status” в колонке “id”. Дополнительную справку по команде удаления можно посмотреть вот так – “vagrant destroy help”.

Полезные ссылки: