Работа с Vagrant в Ubuntu

В этой статье рассмотрим процесс установки Vagrant на Ubuntu 14.10, поясним основы данного средства визуализации и объясним процесс создания первого экземпляра Vagrant.

 

Зачем нам нужен Vagrant?

Vagrant представляет собой программное обеспечение, которое позволяет создавать и настраивать среды виртуального проектирования. Vagrant крайне эффективен для управления виртуальными машинами с помощью CLI, что значительно увеличивает производительность и гибкость.

Здесь машины снабажаются вслед за любым виртуальным средством, например VirtualBox, VMware, AWS или любой другой. Позднее принятые в промышленности средства снабжения, такие как скрипты оболочки, Puppet or Chef, могут быть автоматически устанвлены и настроены.

Это означает, что можно легко настроить, воспроизвести рабочие среды, когда это потребуется.

Почему это удобно?

Vagrant приносит пользу разработчикам, инженерам по эксплуатации, проектировщикам, так как позволяет легко запустить среду разработки, без загрузок коммандной строки, виртуальная машина создаётся за несколько минут. (Не считая времени загрузки образа).

После окончания разработки вы можете проверить все изменения. Важной особенностью явшяется то, что код выполняется на «той самой конкретной машине», не важно из какой точки мира осуществляется доступ и из-под какой операционной системы Windows, Linux или Apple OS X.

Начало работы

Загрузим и установим последнюю версию Vagrant & Virtual Box. Обычно последняя версия VirtualBox работоспособна, однако необходимо будет проверить совместимость версии с Vagrant, проверить это можно на сайте разработчика.

Рассмотрим процесс загрузки и установки на примере Ubuntu 14.10 x86_64:

Загрузка происходит следующим образом:

wget https://dl.bintray.com/mitchellh/vagrant/vagrant_1.7.2_x86_64.deb
wget http://download.virtualbox.org/virtualbox/4.3.22/virtualbox-4.3_4.3.22-98236~Ubuntu~raring_amd64.deb

Установка:

sudo dpkg -i vagrant_1.7.2_x86_64.deb
sudo dpkg -i virtualbox-4.3_4.3.22-98236~Ubuntu~raring_amd64.deb

Рассмотрим несколько терминов, которые необходимо знать перед тем, как создать ваш первый бокс vagrant:

Бокс Vagrant

Бокс (англ. Box) представляет собой пакет, содержащий представление виртуальной машины, запущенной на определенной операционной системе. Проще говоря, это образ любой операционной системы или ядра. Также бокс может зависеть от провайдера.

Провайдеры

Провайдер(англ. Provider) представляет собой программное обеспечение для создания и управления виртуальными машинами, используемыми в Vagrant. Основыными провайдерами являются Virtualbox и VMware, по умолчанию используется VirtualBox, так как он бесплатный и обладает открытым кодом.

Поставщики

Поставщики (англ. Provisioners) используются для установки виртуального сервера, необходимого прорагммного обеспечения и выполнения различных задач. Наиболее известными поставщиками являюся: Puppet, Chef, Ansible и Shell Script.

Vagrantfile

Основная конфигурация vagrant основана на одном файле Vagrantfile. Этот файл необходимо поместить в корень вашей репозитории. В этом файле определяется, какой базовый бокс вам нужен, бокс представляет собой операционную систему, которая будет запускаться на виртуальной машине.

Создание образца

Создадим тестовую директорию, где создадим наш первый образец.

mkdir -p ~/Vagrant/test
cd ~/Vagrant/test

В Ubuntu 12.04 LTS (Precise Pangolin) уже установлен бокс.

vagrant box add precise32 http://files.vagrantup.com/precise32.box

Параметр коммандной строки precise32 является псевдонимом для URL. Бокс загружается в ~/.vagrant.d/boxes. Теперь можно создать образец:

vagrant init precise32
vagrant up

Ниже представлен вид файла VagrantFile:

Vagrant.configure(2) do |config|
config.vm.box = "precise32"
end

Если требуется воспользоваться образцом через SSH, воспользуемся следующей командой:

vagrant ssh

Теперь всё готово!

Дальнейшей настройке посвящена отдельная статья.

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

Ваше мнение очень важно для нас! Обязательно выскажите Ваши мысли, пожелания и критику! Не стесняйтесь задавать вопросы. Скорее всего, ответ появится уже через 2-3 дня. Спасибо заранее.

Go to top