1 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Введение в Vagrant

Vagrant это инструмент, позволяющий унифицировать среду разработки и среду в которой этот код будет разворачиваться, используя технологию виртуализации. Проще говоря, если вы как и я любитель делать проекты в среде Windows, но в будущем разворачивать их на *nix машинах, то Vagrant вам в помощь 🙂 Очень часто возникают проблемы на фоне того, что среда разработки значительно отличается от среды, где будет крутиться конечное приложение. Например, в Windows название папки с Заглавной буквы и со строчной это одно и то же, хотя в unix системах это две разные папки.

С высоты птичьего полёта, Vagrant ничто иное как CLI (интерфейс командной строки) для VirtualBox с блекджеком и Vagrantfile.

В качестве демонстрационного примера мы создадим изолированную операционную систему на базе Ubuntu 14.04.3 LTS с виртуальным окружением Python + работающим Django приложением внутри.

Терминология

  • Виртуальная ОС — изолированная операционная система, работающая внутри программы-эмулятора
  • Программа-эмулятор — программа, использующая аппаратные средства виртуализации компьютерного процессора (прим. VirtualBox, VMWare, Parallels Desktop и т.д.) для создания изолированных виртуальных операционных систем внутри 1 физической машины
  • Vagrant — программа-обёртка вокруг программы-эмулятора «с плюшками»
  • Vagrantfile — файл, описывающий характеристики и поведение будущей виртуальной операционной системы на языке программирования Ruby

Как установить Vagrant на CentOS 7

В этой статье я собираюсь продемонстрировать, как использовать vagrant для раскрутки виртуальной машины за несколько минут в CentOS 7 . Но сначала небольшое знакомство с бродягой.

Vagrant – это проект с открытым исходным кодом для создания и подготовки переносимых виртуальных машин. С vagrant вы можете раскрутить несколько виртуальных машин за невероятно короткое время. Vagrant позволяет вам попробовать несколько операционных систем или дистрибутивов, не беспокоясь о загрузке файлов ISO.

Требования

Нам нужно скачать virtualBox. Vagrant работает на AWS, Docker и VMware тоже. Но я собираюсь использовать VirtualBox в этом уроке.

Теперь вы можете спросить: почему VirtualBox ? Как я уже говорил выше, на самом деле не имеет значения, какое программное обеспечение для виртуализации вы выберете. Любой будет хорошо работать для вас, потому что любые машины Linux имеют одинаковую базу команд. Суть в том, что вам нужно иметь среду виртуализации, например virtualbox, чтобы запускать программное обеспечение для обеспечения доступа, такое как vagrant.

Шаг 1. Установка VirtualBox 5.1 в CentOS 7

Хотя на сайте www.tecmint.com есть несколько руководств по установке virtualBox (например, Установка VirtualBox на CentOS 7), тем не менее, я быстро проведу установку VirtualBox 5.1.

Сначала установите зависимости VirtualBox.

Затем добавьте хранилище VirtualBox.

Теперь установите и соберите модуль ядра.

Шаг 2: Установка Vagrant на CentOS 7

Здесь мы загрузим и установим последнюю версию Vagrant (т.е. 1.9.6 на момент написания) с помощью команды yum.

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

Установите ваш любимый дистрибутив или операционную систему.

Файл с именем Vagrantfile будет создан в вашем текущем каталоге. Этот файл содержит параметры конфигурации для ваших виртуальных машин.

Загрузите свой сервер Ubuntu.

Дождитесь окончания загрузки. Это на самом деле не занимает много времени. Ваша скорость интернета также учитывается.

Список доступных предварительно настроенных ящиков можно найти на странице https://app.vagrantup.com/boxes/search.

Шаг 3: Управление бродячими ящиками с Virtualbox

Запустите Virtualbox, чтобы увидеть предварительно собранную 64-битную виртуальную машину Ubuntu, загруженную в virtualbox с конфигурацией, определенной в Vagrantfile. Это как любая другая виртуальная машина: без разницы.

Читать еще:  Шифрование ef s. Encrypting File System (EFS) - Шифрование папок и файлов в Windows. Использование графического интерфейса

Если вы хотите установить другое окно (скажем, CentOS7 ), измените файл Vagrantfile в вашем текущем каталоге (если там находится ваш Vagrantfile) с вашим любимым редактором. Я использую редактор vi для своей работы. Сразу под строкой 15 введите:

Вы также можете настроить IP-адрес и имена хостов для еще не загруженного блока в Vagrantfile. Вы можете сделать это для максимально возможного количества ящиков.

Чтобы настроить статический IP-адрес, раскомментируйте строку 35 и измените IP-адрес по своему выбору.

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

Управлять этим виртуальным сервером чрезвычайно просто.

Вывод

В этом уроке мы использовали vagrant для быстрой сборки сервера без особых хлопот. Помните, нам не нужно было беспокоиться о загрузке ISO-файла. Наслаждайтесь вашим новым сервером!

Vagrant — установка и настройка

Для Windows и Linux

Vagrant является инструментом с помощью которого осуществляется создание и управление виртуальными машинами с помощью технологии виртуализации.

Благодаря простому в использовании алгоритму и автоматизации процессов, Vagrant сокращает время настройки и оптимизации среды в которой вы будете работать. Погнали.

Установка для Windows

Установка Vagrant сама по себе очень проста, Вам необходимо скачать клиент с официального сайта для операционной системы, которую вы планируете юзать и запустить процесс установки. Для работы Vagrant также необходимо скачать VirtualBox с официального сайта.

VirtualBox гипервизор, осуществляющий процесс виртуализации (опа, тавтология) систем Linux, macOS, Windows и других. Установка софта VirtualBox, как и самого Vagrant проста и не вызовет у вас никаких вопросов и проблем, а как только вы установите две программы, рекомендуется выполнить перезагрузку Вашей системы.

После установки откройте командную строку и проверьте доступность Vagrant с помощью следующих строк кода:

Первым шагом в настройке виртуальной машины с помощью Vagrant является создание Vagrantfile, который будет содержать все необходимые настройки. Введите следующую команду:

Vagrantfile — это файл Ruby, который описывает, как настроить и подготовить виртуальную машину.

Однако, вместо создания виртуальной машины с нуля, софт предлагает вам воспользоваться базовыми образами для использования «шаблонов» виртуальной машины. Эти базовые образы в Vagrant называются «Vagrant box», которые добавляются в Vagrant с помощью инструмента vagrant box add , сохраняющего Vagrant box под определенным именем, предоставляя возможность использовать несколькими средами повторно. Круто, не правда ли?

С помощью этой команды вы сможете загрузить готовый Vagrant box с названием «hashicorp/precision64» из каталога Vashgrant Cloud, предоставляемого разработчиками для обмена готовыми образами. Следует отметить и то, что имеется возможность добавления образов из локальных файлов или пользовательского URL.

«Боксы» хранятся для каждого пользователя отдельно. Каждый проект Vagrant box создает новую копию «бокса» и никогда не изменяет исходный образ. Это означает, что если у вас есть два проекта, в которых используется один образ Vagrant box hashicorp/precision64, добавление файлов на одной виртуальной машине не повлияет на другую.

Когда Vagrant box добавлен в Vagrant, вы можете настроить его для использования в качестве основы. Откройте Vagrantfile и измените содержимое на следующее:

Вы можете указать версию «бокса», указав config.vm.box_version , например:

Также возможно указать URL-адрес, используя config.vm.box_url :

Загружаем первую виртуальную машину Vagrant и вводим команду: $ vagrant up

В течении минуты работа этой команды завершится, загрузив для Вас виртуальную машину с Ubuntu. Процесс загрузки будет выглядеть примерно следующим образом:

Чтобы проверить его работоспособность производится подключение SSH к виртуальной машине: $ vagrant ssh .

Эта команда переведет вас в полноценный SSH-сеанс. Теперь у Вас есть возможность взаимодействия с виртуальной машиной. Сеанс SSH может быть завершен с помощью сочетания клавиш CTRL + D.

По окончанию работы с виртуальной машиной следует запустить команду vagrant destroy и Vagrant прекратит использование любых ресурсов, потребляемых виртуальной машиной.

Читать еще:  Приложение со звериными мордами животных на айфон. Морды животных на лицо. Как называется приложение, где няшный зайчик и голос

Установка на Ubuntu:

Устанавливаем Virtualbox, который, кстати, сразу доступен в репозиториях Ubuntu: > sudo apt install virtualbox

Совет: Следует отметить, что Vagrant и Virtualbox, доступные в репозиториях Ubuntu могут быть не самой актуальной версии, для установки последних версий этих программ, загрузите их с официальных сайтов разработчиков.

Чтобы убедиться, что установка прошла успешно с помощью следующей команды мы можем проверить версию программы Vagrant: vagrant —version

Вы должны увидеть примерно следующее: Vagrant 2.0.2

Убедившись, что Vagrant установлен в системе Ubuntu, мы можем создать среду разработки, которая является наиболее распространенным вариантом использования данной программы.

Первым шагом является создание каталога, который будет корневым каталогом проекта. И делаем файл Vagrantfile.

Создайте каталог проекта и переключитесь на него:

Следующим шагом является инициализация нового Vagrantfile с помощью команды vagrant init. В этом примере мы у нас CentOS 7. Запустите следующую команду, чтобы инициализировать новый Vagrantfile:

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 также внедряет каталог проекта в /vagrant на виртуальной машине, что позволяет вам работать с файлами вашего проекта на вашем хост-компьютере.

Чтобы войти в среду, просто запустите ее с помощью команды:

Остановка работы среды:

Следующая строка остановит работу среды, а также очистит всю информацию, которая была необходима для ее работы:

Благодаря нашей статье, вы увидели процесс установки и настройки виртуальной машины на свой компьютер на Windows или Ubuntu 18.04, а также в статье наглядно продемонстрирован процесс создания и настройки виртуальной машины. Профит!

Содержание

  • Установка Vagrant
  • Создание окружения
  • Конфигурация PHPStorm для управления вагрантом

Установка Vagrant

Vagrant (на момент написания статьи имеет версию 1.8.1) поддерживает несколько программ виртуализации (в терминологии вагранта — провайдеров), а именно: VMware [2] , VirtualBox [3] , Docker [4] , Hyper-V [5] . Есть возможность поддержки кастомного провайдера, как гласит документация [6] . В данной статье рассмотрим разворот виртуальной машины на базе VirtualBox. Далее предполагаю, что у вас уже установлен виртуалбокс, если нет, то настоятельно рекомендую это сделать ознакомившись со статьей Установка и настройка VirtualBox.

Установка рассмотрена на примере Windows 7. Скачиваем exe файл с официального сайта [7] и запускаем.
Окно приветствия установщика, жмем Next.

Подтверждаем, что принимаем лицензионное соглашение.

Указываем путь директории установки. В данном случае оставляем дефолтный и жмем кнопку Install


Процесс установки займет некоторое время.


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

В случае успешной установки сообщение будет таким

Создание окружения

Для того, чтобы создать окружение, достаточно проделать несколько шагов.
Во-первых, необходимо выбрать/создать папку на диске, в которой будет располагаться директория настроек окружения. Имя папки по возможности должно состоять из латиницы и не иметь в себе пробелов во избежания потенциальных проблем.
Далее открываем командую строку, переходим в нужную папку и запускаем команду

Рекомендую предварительно убедиться, что виртуалбокс на вашей машине поддерживает 64-bit ubuntu, в противном случае используйте 32-bit

После запуска данной команды в текущей папке будет создан Vagrantfile. Precise64 — означает готовый бокс (в данном случае будет установлена ubuntu 12.04 для 64-разрядной системы). Все готовые боксы можно посмотреть по ссылке [8] , приведенной в конце статьи в разделе Дополнительная информация.

Запускаем команду

После запуска данной команды, вагрант скачает нужный бокс, установит необходимое окружение.

В итоге, в интерфейсе VirtualBox появится созданная виртуальная машина.

Для того, чтобы подключиться к виртуальной машине через ssh достаточно выполнить простую команду из директории расположения файла Vagrantfile.

Читать еще:  ТОП-10 Лучших Вакуумных Наушников

Конфигурация PHPStorm для управления вагрантом

PHPStorm уже относительно давно поддерживает вагрант еще с 7 версии. Для конфигурации необходимо кликнуть по иконке настроек или пройти по пути через главное меню File → Settings. В открывшемся окне в поле Vagrant executable указываем путь до exe файла, для Instance folder — путь до папки с настройками для текущего проекта (путь до папки, где лежит Vagrantfile для данного проекта) и жмем кнопку Apply или ОК.

На этом настройка завершена, теперь мы можем легко управлять созданной виртуальной машиной. Доступные команды:

  • up — запуск виртуальной машины
  • reload— перезагрузка
  • provision— запуск дополнительных скриптов (bash, Chef и т.д.) в настройках Vagrantfile
  • suspend— постановка на паузу виртуалки
  • resume— снятие с паузы
  • halt— остановка машины
  • destroy— удаление

Для выполнения данных команд через UI PHPStorm необходимо пройти через главное меню по пути Tools → Vagrant.

Эти же команды доступны через командную строку, только необходимо их выполнять из директории расположения Vagrantfile и ставить префикс vagrant перед командной, например

Настройка общих папок в VirtualBox

Переходим в настройки нашей виртуальной машины и переходим в раздел «Общие папки»

Жмем добавить папку.

Выбираем путь к папке на хосте. Имя папки для гостевой системы. И указываем доступ к папке для гостевой системы (только чтение) и указываем подключать данную папку автоматически.

Напоминаю, хост – это машина на которой работает VirtualBox, а гостевая система – это система, которая установлена на виртуальную машину

Жмем везде «Ок». Все общую папку для виртуальной машины мы настроили. Теперь можно запустить нашу машину. И проверить.

Vagrant-файл

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

  1. Сначала загружается Vagrantfile, содержащийся в руби-геме.
  2. Следом загружается Vagrantfile из директории базовой сборки (если она было собрана с параметром —vagrantfile).
  3. Потом загружается Vagrantfile из домашнего каталога пользователя (

/.vagrant.d/), позволяя пользователю добавить для него какие-либо параметры.

  • И последним загружается Vagrantfile из директории проекта. В большинстве случаев именно в нем находятся все основные настройки проекта, и именно этот файл стоит добавить в систему контроля версий.
  • Полный список доступных настроек для вагрантфайла содержится в документации. Только что созданная виртуальная среда имеет минимальный конфиг вида:

    И пока несколько бестолкова, но ничего, дальше мы добавим ей функционала.

    Как пользоваться Vagrant

    Vagrant собирает виртуальные машины исходя из конфигурационного файла Vagrantfile. Вы можете создавать и использовать для быстрого развёртывания свои варианты, либо устанавливать различные операционные системы подготовленные другими. Большой сборник содержится в Vagrant Cloud, там вы можете выбрать заинтересовавшую вас коробку и собрать, а затем запустить с помощью команды вида:

    Например, offensive-security подготовили kali-linux-light,

    тогда установка и запуск выполняются командами:

    Примеры других популярных систем:

    Для разных систем выделите отдельные папки, то есть запускайте приведённые выше команды в разных папках.

    Vagrant умеет не только скачивать и запускать коробки, он также умеет запускать внутри них пользовательские скрипты — поэтому некоторые системы могут устанавливаться сложнее, чем показано здесь. Для них может потребоваться скачивание полного архива. Затем нужно будет перейти в папку, содержащую файл Vagrantfile и уже там запустить vagrant up.

    Ссылка на основную публикацию
    Статьи c упоминанием слов:
    Adblock
    detector