Как с помощью Vagrant автоматически в VirtualBox создать виртуальную машину и простейший сайт, и открыть его из основной системы
Primary tabs
Forums:
Что такое Vagrant?
Vagrant — это надстройка, которая управляет виртуальными машинами в VirtualBox: создаёт, настраивает, подключает сеть, ставит ПО и т.п. Он работает из основной системы и использует VirtualBox "под капотом".
Vagrant нужно установить на хостовую систему (в моём случае это Windows), где у вас уже стоит VirtualBox.
1. Установка Vagrant на Windows
Перейдите на сайт: https://developer.hashicorp.com/vagrant/...
Выберите версию для Windows (AMD64) и установите, как обычную программу.
После установки откройте PowerShell или cmd и проверьте:
```cmd
vagrant --version
2. Создание Vagrant-проекта
```cmd
cd ~ mkdir my-vagrant cd my-vagrant vagrant init
Таким образом, в домашней директории пользователя Windows создадим папку проекта "my-vagrant", а команда "vagrant init" создаст в ней дефолтный файл Vagrantfile.
3. Автоматизация управления над Virtualbox
Отредактируйте Vagrantfile — замените содержимое файла на следующее:
# -*- mode: ruby -*- Vagrant.configure("2") do |config| # Используем Ubuntu 22.04 LTS config.vm.box = "ubuntu/jammy64" # Настройка приватной сети с IP config.vm.network "private_network", ip: "192.168.33.10" # Установка Nginx и создание HTML-файла config.vm.provision "shell", inline: <<-SHELL # Установка nginx sudo apt-get update sudo apt-get install -y nginx # Создание простейшего index.html echo "<h1>Hello from Vagrant on Ubuntu 22.04</h1>" | sudo tee /var/www/html/index.html # Включение nginx sudo systemctl enable nginx sudo systemctl restart nginx SHELL end
4. Запуск виртуальной машины
VirtualBox должен быть запущен
```cmd
vagrant up
В этом шаге Vagrant:
скачает образ Ubuntu,
настроит сеть,
установит nginx,
поместит HTML-файл,
запустит сервер.
Теперь в основной системе в браузере откроем:
http://192.168.33.10
должны увидеть сообщение "Hello from Vagrant on Ubuntu 22.04".
Если открыть VirtualBox, то в списке виртуальных машин появилась ещё одна (у меня это my-vagrant_default_1750920237706_14235).
5. Работа с созданной гостевой системой
В нормальной работе с Vagrant не стоит входить в ОС через VirtualBox вручную (но если очень хочется, то вот стандартные учётные данные для всех Vagrant-образов Ubuntu: логин: vagrant пароль: vagrant).
Вместо этого нужно использовать команду "vagrant ssh" из основной системы из папки проекта:
```cmd
cd ~\my-vagrant vagrant ssh
таким образом зашли в гостевую систему через терминал хостовой системы:
vagrant@ubuntu-jammy:~$
посмотреть содержимое папки html:
```cmd
ls -l /var/www/html/
проверить версию nginx внутри виртуалки:
```cmd
nginx -v
посмотреть, какие ещё пакеты установлены:
```cmd
dpkg -l
выйти из виртуалки:
```cmd
exit
6. Добавление домена через hosts
Если нужно открыть сайт по домену из браузера из основной системы, например по url http://myproject.loc, отредактируем файл hosts, который находится по адресу C:\Windows\system32\drivers\etc\hosts
Добавьте в этот файл ещё одну строчку:
192.168.33.10 myproject.loc
Файл после этого должен выглядеть примерно так:
# 127.0.0.1 localhost 127.0.0.1 test.loc 192.168.1.4 mysite.loc 192.168.33.10 myproject.loc ::1 localhost
Сохраните изменения и закройте файл.
Теперь можно открыть сайт по адресу: http://myproject.loc
- Log in to post comments
- 31 reads