Vagrant является инструментом с помощью которого осуществляется создание и управление виртуальными машинами с помощью технологии виртуализации.
Благодаря простому в использовании алгоритму и автоматизации процессов, Vagrant сокращает время настройки и оптимизации среды в которой вы будете работать. Погнали.
Установка для Windows
Установка Vagrant сама по себе очень проста, Вам необходимо скачать клиент с официального сайта для операционной системы, которую вы планируете юзать и запустить процесс установки. Для работы Vagrant также необходимо скачать VirtualBox с официального сайта.
VirtualBox гипервизор, осуществляющий процесс виртуализации (опа, тавтология) систем Linux, macOS, Windows и других. Установка софта VirtualBox, как и самого Vagrant проста и не вызовет у вас никаких вопросов и проблем, а как только вы установите две программы, рекомендуется выполнить перезагрузку Вашей системы.
Кстати, почитать об установке VirtualBox 6.0 на Linux вы можете в нашей статье
После установки откройте командную строку и проверьте доступность Vagrant с помощью следующих строк кода:
$ vagrant Usage: vagrant [options] <command> [] -v, --version Print the version and exit. -h, --help Print this help. # ...
Первым шагом в настройке виртуальной машины с помощью Vagrant является создание Vagrantfile, который будет содержать все необходимые настройки. Введите следующую команду:
mkdir vagrant_demo && cd vagrant_demo vagrant init ubuntu/trusty64
Vagrantfile - это файл Ruby, который описывает, как настроить и подготовить виртуальную машину.
Однако, вместо создания виртуальной машины с нуля, софт предлагает вам воспользоваться базовыми образами для использования "шаблонов" виртуальной машины. Эти базовые образы в Vagrant называются "Vagrant box", которые добавляются в Vagrant с помощью инструмента vagrant box add
, сохраняющего Vagrant box под определенным именем, предоставляя возможность использовать несколькими средами повторно. Круто, не правда ли?
$ vagrant box add hashicorp/precise64
С помощью этой команды вы сможете загрузить готовый Vagrant box с названием "hashicorp/precision64" из каталога Vashgrant Cloud, предоставляемого разработчиками для обмена готовыми образами. Следует отметить и то, что имеется возможность добавления образов из локальных файлов или пользовательского URL.
"Боксы" хранятся для каждого пользователя отдельно. Каждый проект Vagrant box создает новую копию "бокса" и никогда не изменяет исходный образ. Это означает, что если у вас есть два проекта, в которых используется один образ Vagrant box hashicorp/precision64, добавление файлов на одной виртуальной машине не повлияет на другую.
Когда Vagrant box добавлен в Vagrant, вы можете настроить его для использования в качестве основы. Откройте Vagrantfile и измените содержимое на следующее:
Vagrant.configure("2") do |config| config.vm.box = "hashicorp/precise64" end
Вы можете указать версию "бокса", указав config.vm.box_version
, например:
Vagrant.configure("2") do |config| config.vm.box = "hashicorp/precise64" config.vm.box_version = "1.1.0" end
Также возможно указать URL-адрес, используя config.vm.box_url
:
Vagrant.configure("2") do |config| config.vm.box = "hashicorp/precise64" config.vm.box_url = "https://vagrantcloud.com/hashicorp/precise64" end
Загружаем первую виртуальную машину Vagrant и вводим команду: $ vagrant up
В течении минуты работа этой команды завершится, загрузив для Вас виртуальную машину с Ubuntu. Процесс загрузки будет выглядеть примерно следующим образом:
Чтобы проверить его работоспособность производится подключение SSH к виртуальной машине: $ vagrant ssh
.
Эта команда переведет вас в полноценный SSH-сеанс. Теперь у Вас есть возможность взаимодействия с виртуальной машиной. Сеанс SSH может быть завершен с помощью сочетания клавиш CTRL + D.
vagrant@precise64:~$ logout Connection to 127.0.0.1 closed.
По окончанию работы с виртуальной машиной следует запустить команду vagrant destroy
и Vagrant прекратит использование любых ресурсов, потребляемых виртуальной машиной.
Установка на Ubuntu:
Устанавливаем Virtualbox, который, кстати, сразу доступен в репозиториях Ubuntu: >sudo apt install virtualbox
Совет: Следует отметить, что Vagrant и Virtualbox, доступные в репозиториях Ubuntu могут быть не самой актуальной версии, для установки последних версий этих программ, загрузите их с официальных сайтов разработчиков.
Чтобы убедиться, что установка прошла успешно с помощью следующей команды мы можем проверить версию программы Vagrant: vagrant --version
Вы должны увидеть примерно следующее: Vagrant 2.0.2
Убедившись, что Vagrant установлен в системе Ubuntu, мы можем создать среду разработки, которая является наиболее распространенным вариантом использования данной программы.
Первым шагом является создание каталога, который будет корневым каталогом проекта. И делаем файл Vagrantfile.
Создайте каталог проекта и переключитесь на него:
mkdir ~/my-first-vagrant-project cd ~/my-first-vagrant-project
Следующим шагом является инициализация нового Vagrantfile с помощью команды vagrant init. В этом примере мы у нас CentOS 7. Запустите следующую команду, чтобы инициализировать новый Vagrantfile:
vagrant init centos/7
A `Vagrantfile` has been placed in this directory. You are now
ready to `vagrant up` your first virtual environment! Please read the comments in the Vagrantfile as well as documentation on `vagrantup.com` for more information on using Vagrant.
Запустив vagrant up, мы получаем возможность создать и настроить среду в соответствии с Vagrantfile.
vagrant up ==> default: Configuring and enabling network interfaces... default: SSH address: 192.168.121.74:22 default: SSH username: vagrant default: SSH auth method: private key ==> default: Rsyncing folder: /home/linuxize/Vagrant/my-first-vagrant-project/ => /vagrant
Как видно из приведенной выше информации, Vagrant также внедряет каталог проекта в /vagrant на виртуальной машине, что позволяет вам работать с файлами вашего проекта на вашем хост-компьютере.
Чтобы войти в среду, просто запустите ее с помощью команды:
vagrant ssh
Остановка работы среды:
vagrant halt
Следующая строка остановит работу среды, а также очистит всю информацию, которая была необходима для ее работы:
vagrant destroy
Благодаря нашей статье, вы увидели процесс установки и настройки виртуальной машины на свой компьютер на Windows или Ubuntu 18.04, а также в статье наглядно продемонстрирован процесс создания и настройки виртуальной машины. Профит!