service:vagrant
Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слеваПредыдущая версия | |||
service:vagrant [26.08.2022 08:16] – viacheslav | service:vagrant [30.07.2024 19:21] (текущий) – внешнее изменение 127.0.0.1 | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
+ | ====== Vagrant ====== | ||
+ | Оболочка, | ||
+ | Бокс (box) - образ Vagrant (https:// | ||
+ | |||
+ | Установка - https:// | ||
+ | |||
+ | ===== Cоздание VM ===== | ||
+ | <code bash> | ||
+ | mkdir -p vagrant | ||
+ | cd vagrant | ||
+ | # Инициализация, | ||
+ | vagrant init generic/ | ||
+ | # Создался Vagrantfile с примерно таким содержимым: | ||
+ | Vagrant.configure(" | ||
+ | config.vm.box = " | ||
+ | end | ||
+ | # Запустить ВМ, атрибут - провайдер: | ||
+ | vagrant up --provider=hyperv | ||
+ | # Статус | ||
+ | vagrant status | ||
+ | # Логин с помощью vagrant ssh. Пароль для sudo — vagrant | ||
+ | # Удалить ВМ | ||
+ | vagrant destroy -f | ||
+ | </ | ||
+ | Команды Vagrant - https:// | ||
+ | |||
+ | Параметры ВМ | ||
+ | <code bash> | ||
+ | config.vm.provider " | ||
+ | | ||
+ | v.cpus=4 end` | ||
+ | end | ||
+ | </ | ||
+ | https:// | ||
+ | |||
+ | ===== Настройка программ внутри VM (provision) ===== | ||
+ | Обычный скрипт на языке оболочки. | ||
+ | <file bash bootstrap.sh> | ||
+ | apt update | ||
+ | apt install nginx -y | ||
+ | systemctl enable nginx | ||
+ | systemctl start nginx | ||
+ | </ | ||
+ | |||
+ | В Vagrantfile нужно сослаться на provision file: | ||
+ | <code bash> | ||
+ | config.vm.provision " | ||
+ | </ | ||
+ | https:// | ||
+ | |||
+ | Проброс порта | ||
+ | <code bash> | ||
+ | Vagrant.configure(" | ||
+ | config.vm.network " | ||
+ | end | ||
+ | </ | ||
+ | https:// | ||
+ | |||
+ | <code bash> | ||
+ | # Запустить | ||
+ | vagrant up | ||
+ | # Или применить изменения, | ||
+ | vagrant reload --provision | ||
+ | </ |