Vagrant

https://www.vagrantbox.com/

https://www.vagrantup.com/docs/

Установка

$ apt install -f $ apt --fix-broken install $ apt install ruby-dev vagrant $ apt install virtualbox virtualbox-ext-pack
$ modprobe -a vboxguest vboxsf vboxvideo $ modprobe vboxnetadp $ modprobe vboxnetflt

Коробочки

https://atlas.hashicorp.com/boxes/search

http://www.vagrantbox.es/

debian/contrib-jessie64 - Vanilla Debian 8 "Jessie" build with contrib vboxsf kernel module

Плагины

https://github.com/mitchellh/vagrant/wiki/Available-Vagrant-Plugins

Системы управления конфигурацией

Docker - по сути это некий контейнер в который вы можете засунуть операционную систему, свой софт и базу данных и запустить его. У контенеров есть слои, ОС - нижний слой, софт выше слой, и ваше приложение и данные - верхний слой. Контенеры удобны для переноса приложения и сопровождающего окружения на сервер или в облако. Docker не создает виртуальную систему, а только эмулирует ее пробрасывая системные вызовы и работает стабильно только в Linux. С недавнего времени появилась версия для MacOS. Обычно сброка бокса описана в файле Dockerfile.

Vagrant, же, напротив - базируется на системах виртуализации (VirtualBox, libvirt, xen). С самого начала он создает полноценную виртуальную машину, выполняет скрипт provision, который устанавливает все окружение и настраивает его. Vagrant работает на всех операционных системах в силу своей природы.

Shell — старые добрые shell-скрипты. В XXI веке уже не интересно.

Ansible — молодая, набирающая обороты, система управления конфигурацией.

Chef — про него, пожалуй, слышали все. Поддерживается standalone (Chef Solo) и серверная (Chef Client) версии.

Docker — модная в последнее время система, поддерживающая концепцию Immutable Server.

Puppet — одна из наиболее распространенных систем управления конфигурацией. Поддерживается standalone и серверная версия.

Salt — система управления конфигурацией Salt Stack.

Системы виртуализации

virtualbox

lxc

docker

https://app.vagrantup.com/boxes/search?provider=docker

https://github.com/nishidayuya/docker-vagrant-debian

https://hub.docker.com/r/nishidayuya/docker-vagrant-debian/

Создание коробки из рабочей виртуальной машины

У нас есть виртуальная машина с наименованием "vm". В отключено состоянии выполняем команду от root. Где /Users/mirocow/vagrant/vm.box является путем до создаваемой коробки.

$ rm /Users/mirocow/vagrant/vm.box $ vagrant package --base vm --output /Users/mirocow/vagrant/vm.box

Запуск локальных коробок

$ vagrant box add foo-box /path/to/vagrant-box.box $ vagrant init foo-box $ vagrant up

On-line конфигураторы

https://puphpet.com/

Рецепты

Yii2

Wordpress

https://github.com/vccw-team/vccw

Остальные

https://gitlab.com/gitlab-org/gitlab-development-kit/blob/master/Vagrantfile

Пакеты

https://github.com/sj26/mailcatcher

Сатьи / Сайты / Документация

Восстановление настроек коробочки

http://sysadm.pp.ua/linux/sistemy-virtualizacii/vagrantfile.html

Как ускорить Vagrant (общие папки)

http://stdout.in/ru/post/kak-uskorit-vagrant-obshie-papki

http://onedev.net/post/302

Ошибки

/sbin/mount.vboxsf: mounting failed with the error: No such device

$ vagrant plugin expunge $ vagrant plugin install vagrant-vbguest $ vagrant box update $ vagrant vbguest

Другие системы виртуализации