img

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

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

icon strelka icons icons

узнай больше на курсе

DevOps-инженер с нуля
Стань DevOps-инженером с нуля и научись использовать инструменты и методы DevOps
Укажите вашу электронную почту
Неверный адрес электронной почты
Нажимая на кнопку, вы соглашаетесь на обработку персональных данных
Готово!
Отправили доступы на вашу
электронную почту
Полный курс по сетевым технологиям
Полный курс по сетевым технологиям от Мерион Нетворкс - учим с нуля сетевых инженеров и DevOPS специалистов
Укажите вашу электронную почту
Неверный адрес электронной почты
Нажимая на кнопку, вы соглашаетесь на обработку персональных данных
Готово!
Отправили доступы на вашу
электронную почту
Python программист с нуля
Стань разработчиком на одном из самых популярных языков программирования - Python
Укажите вашу электронную почту
Неверный адрес электронной почты
Нажимая на кнопку, вы соглашаетесь на обработку персональных данных
Готово!
Отправили доступы на вашу
электронную почту

Благодаря простому в использовании алгоритму и автоматизации процессов, 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. Процесс загрузки будет выглядеть примерно следующим образом:

Пример запуска Vagrant на 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, а также в статье наглядно продемонстрирован процесс создания и настройки виртуальной машины. Профит!

Ссылка
скопирована
Получите бесплатные уроки на наших курсах
Все курсы
icon strelka icons icons

узнай больше на курсе

DevOps-инженер с нуля
Стань DevOps-инженером с нуля и научись использовать инструменты и методы DevOps
Подробнее о курсе
Полный курс по сетевым технологиям
Полный курс по сетевым технологиям от Мерион Нетворкс - учим с нуля сетевых инженеров и DevOPS специалистов
Подробнее о курсе
Python программист с нуля
Стань разработчиком на одном из самых популярных языков программирования - Python
Подробнее о курсе
Онлайн-курс по кибербезопасности
Полный курс по кибербезопасности от Мерион Нетворкс - учим с нуля специалистов по информационной безопасности. Пора стать безопасником!
Подробнее о курсе
Java-разработчик с нуля
Освойте backend-разработку и программирование на Java, фреймворки Spring и Maven, работу с базами данных и API
Подробнее о курсе
Этичный хакинг
Научись работать с Kali Linux, изучи самые распространенные уязвимости, разверни виртуальную лабораторию для пентестинга
Подробнее о курсе
Еще по теме:
img
Git Flow - это специальная система ветвления для Git. Она помогает команде лучше контролировать и добавлять различные версии проекта. В статье рассказываем, как ее использовать.
img
Мы рассмотрим несколько простых способов, с помощью которых вы можете управлять и отслеживать логи для своих контейнеров.
img
Узнайте, как использовать Git Hooks для автоматизации задач в рабочем процессе: от проверки коммитов до автоматического тестирования, и как настроить хуки для совместной работы в команде.
img
Откройте для себя, как канареечное развертывание может минимизировать риски при обновлении ПО. Узнайте, как постепенно внедрять новые функции и обеспечивать стабильность продукта с помощью этого метода.
img
Откройте для себя GitOps — революционный подход к управлению инфраструктурой через Git. Узнайте, как этот метод упрощает развертывание приложений и повышает надежность с помощью автоматизации и масштабируемости.
Весенние скидки
30%
50%
60%
До конца акции: 30 дней 24 : 59 : 59