From f27c7042dfd1cb7ef129084af69215cf3872895d Mon Sep 17 00:00:00 2001 From: alex Date: Wed, 14 Jan 2026 21:39:53 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D1=82?= =?UTF-8?q?=D1=8C=20README.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 121 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 121 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..fb28b84 --- /dev/null +++ b/README.md @@ -0,0 +1,121 @@ +# Домашнее задание 18 + +## Vagrant + +Основная ОС это windows 10, vagrant установлен именно на ней. +В качестве гостевой OC используется Fedora Cloud 43 + + +### Подготовка + +Устанавливаем Virtualbox + +Устанавливаем vagrant + +Скачиваем готовый box Fedora Cloud 43 по ссылке https://download.fedoraproject.org/pub/fedora/linux/releases/43/Cloud/x86_64/images/Fedora-Cloud-Base-Vagrant-VirtualBox-43-1.6.x86_64.vagrant.virtualbox.box + +Импортируем скаченный box в vagrant +```ps +PS C:\Users\Alex\vagrant> vagrant box add --name fedora/43-1.6 C:\Users\Alex\Downloads\Fedora-Cloud-Base-Vagrant-VirtualBox-43-1.6.x86_64.vagrant.virtualbox.box +``` + +Проверяем, что образ импортировался нормально +```ps +PS C:\Users\Alex\vagrant> vagrant box list +fedora/43-1.6 (virtualbox, 0, (amd64)) +``` + + +### Создание Vagrantfile + +Зададим следующие характеристики для VM +- CPU - 1 +- Memory - 1024mb + +Добавим 2 дополнительных HDD по 1Gb + +Пробросим порт 8080 с хостовой машины в гостевую на 80 порт. + +После запуска VM в provision пропишим следующие действия: +1. Обновление пакетов +2. Установка nginx +3. Форматирование дополнительных дисков в ext4 +4. Прописываем автомонтирование дисков в /mnt/disk1 и /mnt/disk2 + +Готовый [Vagrantfile](Vagrantfile) + + +### Запуск VM + +Сохраняем готовый [Vagrantfile](Vagrantfile) вновую директорию, и страртуем vagrant + +```ps +PS C:\Users\Alex\vagrant> vagrant up +Bringing machine 'Fedora-cloud' up with 'virtualbox' provider... +==> Fedora-cloud: Importing base box 'fedora/43-1.6'... +==> Fedora-cloud: Matching MAC address for NAT networking... +==> Fedora-cloud: Setting the name of the VM: fedora-test-vagrant +==> Fedora-cloud: Clearing any previously set network interfaces... +==> Fedora-cloud: Preparing network interfaces based on configuration... + Fedora-cloud: Adapter 1: nat +==> Fedora-cloud: Forwarding ports... + Fedora-cloud: 80 (guest) => 8080 (host) (adapter 1) +... + +... + Fedora-cloud: Allocating group tables: done + Fedora-cloud: Writing inode tables: done + Fedora-cloud: Creating journal (8192 blocks): done + Fedora-cloud: Writing superblocks and filesystem accounting information: done +PS C:\Users\Alex\vagrant> +``` + + +После проверим, какие порты прокинуты в VM + +```ps +PS C:\Users\Alex\vagrant> vagrant port +The forwarded ports for the machine are listed below. Please note that +these values may differ from values configured in the Vagrantfile if the +provider supports automatic port collision detection and resolution. + + 80 (guest) => 8080 (host) + 22 (guest) => 2222 (host) +PS C:\Users\Alex\vagrant> +``` +Видно что порт 8080 проброшен + + +Подключимся в VM, и проверим монтирование дисков + +```ps +PS C:\Users\Alex\vagrant> vagrant ssh +[vagrant@localhost ~]$ df -h +Filesystem Size Used Avail Use% Mounted on +/dev/sda4 3.0G 969M 1.6G 38% / +devtmpfs 448M 0 448M 0% /dev +tmpfs 475M 0 475M 0% /dev/shm +tmpfs 190M 596K 190M 1% /run +tmpfs 1.0M 0 1.0M 0% /run/credentials/systemd-journald.service +tmpfs 475M 4.0K 475M 1% /tmp +/dev/sda3 1.9G 87M 1.7G 5% /boot +/dev/sda2 100M 21M 80M 21% /boot/efi +/dev/sda4 3.0G 969M 1.6G 38% /home +/dev/sda4 3.0G 969M 1.6G 38% /var +tmpfs 1.0M 0 1.0M 0% /run/credentials/systemd-resolved.service +tmpfs 1.0M 0 1.0M 0% /run/credentials/getty@tty1.service +vagrant 465G 199G 266G 43% /vagrant +/dev/sdb 974M 280K 906M 1% /mnt/disk1 +/dev/sdc 974M 280K 906M 1% /mnt/disk2 +tmpfs 95M 16K 95M 1% /run/user/1000 +tmpfs 1.0M 0 1.0M 0% /run/credentials/serial-getty@ttyS0.service +``` + +Видим, что диски примонтированы в каталоги /mnt/disk1 и /mnt/disk2 + + +На основной ОС открываем в браузере ссылку http://127.0.0.1:8080/ и видим тестовую страницу nginx с гостевой VM +![18_1](images/18_1.png) + + +Все готово! \ No newline at end of file