Используется для создания и конфигурирования виртуальной среды, на основе virtualbox, а также vmware, Amazon EC2 и других провайдеров виртуализации.
Инсталляция
Инсталляция проста для всех платформ, касательно Mac есть несколько способов. Здесь описан способ с помощью homebrew.
Устанавливаем VirtualBox
brew cask install virtualbox
Устанавливаем vagrant и мэнеджер
brew cask install vagrant
brew cask install vagrant-manager
Проверить можно командой:
vagrant version
Создание и запуск виртуальной системы(box)
Добавим, например Centos box vagrant
vagrant box add centos/7
Проверить, что образ установился, можно командой
vagrant box list
Создаем директорию, где будем инициализировать данный Centos box, в ней запускаем команду инициализации нового образа
vagrant init centos/7
Данная команда создает конфигурационный файл Vagrantfile
Запускаем данный образ:
vagrant up
После запуска можно подключиться с помощью ssh:
vagrant ssh
Источники для скачивания образов
http://atlas.hashicorp.com/search
http://www.vagrantbox.es/
Конфигурационный файл, полезные настройки
После инициализации командой ‘vagrant init’ в текущей директории создается конфигурационный файл ‘Vagrantfile’.
Настройки ssh
По умолчанию для подключения по ssh используется порт 2222, это порт хоста, который форвардит реальный порт ssh виртуальной машины (порт 22) на хостовый порт 2222, что позволяет подключаться к виртуальной машине с помощью команды ‘ssh -p 2222 vagrant@localhost‘. Настройки номера порта хоста можно поменять:
config.vm.network :forwarded_port, guest: 22, host: 2201, id: ‘ssh’
Для настройки различных аспектов ssh на хосте можно использовать команды config.ssh, например для включения X11 forwarding:
config.ssh.forward_x11 = true