- Системный интегратор
- Установка Windows 2012 R2 Server на VirtualBox
- Подготовка виртуальной машины VirtualBox к установке Windows 2012 R2 Server
- Установка Windows Server 2012 R2
- Создание сервера в Windows 7 с помощью Virtualbox
- Предыстория
- Задача
- Инвентарь
- Приступим
- Конфигурация Linux
- Доступ к серверу из внешнего мира
- Пробиваемся на свет
- Локальный веб-сервер — VirtualBox, Debian, Nginx+php-fpm, MySQL
- Задача
- Виртуалка и Debian
- Настройки
- Веб-сервер
- Nginx
- Workbench
- Рабочий софт
- Vagrant
- Docker
Системный интегратор
Установка Windows 2012 R2 Server на VirtualBox
В этой статье мы приводим пошаговую инструкцию с скриншотами по подготовке виртуальной машины VirtualBox к установке Windows 2012 R2 Server и инструкцию по инсталляции Windows 2012 R2 Server в виртуальную машину Oracle VM VirtualBox.
Подготовка виртуальной машины VirtualBox к установке Windows 2012 R2 Server
Windows 2012 R2 Server выпускается компанией Microsoft в 64 битном исполнении. Для установки Windows 2012 R2 Server требуется, минимум, 64-разрядный процессор с тактовой частотой 1,4 ГГц, 512 МБ ОЗУ, 32 ГБ на HDD.
Запустите Oracle VM VirtualBox Менеджер.
Создайте новую Виртуальную Машину (VM):
В VirtualBox Менеджере нажмите кнопку Создать , запустится мастер создания виртуальной машины. В мастере введите имя новой VM, например, Windows2012.
Выберите операционную систему Microsoft Windows, версии Windows 2012 (64 bit).
Выделите для виртуальной машины Windows 2012 R2 Server 2Gb оперативной памяти, но не более половины физической памяти компьютера.
Выберите жесткий диск для виртуальной машины в VrtualBox Менеджере
Укажите тип жесткого диска для виртуальной машины в VrtualBox.
Укажите формат хранения жесткого диска для виртуальной машины в VrtualBox.
Укажите имя и размер виртуального жесткого диска для виртуальной машины в VrtualBox.
Настройте свойства новой виртуальной машины. В разделе Система установите CD-ROM первым в порядке загрузки. Для Windows 2012 R2 Server 64 bit обязательно выберите чипсет ICH9:
В разделе Система на вкладке Процессор определите количество ядер процессора, которые будут доступны для Windows 2012 R2 Server.
В разделе Система на вкладке Ускорение включите средства аппаратной виртуализации доступные Вашему процессору.
В разделе Дисплей выделите необходимое для работы Windows 2012 количество видеопамяти и включите 3D и 2D ускорение если это Вам необходимо.
В разделе Носители выберите изображение CD диска (под надписью IDE контроллер), а затем, нажмите кнопку с изображением CD диска в панели Атрибуты. Откройте диалог «Выбрать файл образа CD диска».
Выберите ISO образ Windows 2012 R2 Server — .iso (Дистрибутив ознакомительной версии Windows 2012 R2 Server).
Все настройки виртуальной машины Oracle VM VirtualBox для установки Windows 2012 R2 Server могут быть следующими:
Установите OS Windows 2012 R2 Server в виртуальную машину VirtualBox. Для этого запустите виртуальную машину кнопкой Старт .
Установка Windows Server 2012 R2
Скачайте с сайта Microsoft ознакомительную версию: Windows Server 2012 R2 с дополнительным System Center 2012 R2. Для зарегистрированных тестировщиков предлагается 180-дневная пробная полнофункциональная версия программного обеспечения Windows Server 2012 R2 с дополнительным System Center 2012 R2.
Доступны следующие варианты загрузки: Windows Server 2012 R2 Datacenter ISO (DVD 4,0Gb), Windows Server 2012 R2 Datacenter VHD (виртуальная машина для сервера виртуализации Hyper-V), Windows Server 2012 R2 Datacenter на Windows Azure (облако от Microsoft). Мы воспользуемся ISO образом DVD диска 9600.16384.WINBLUE_RTM.130821-1623_X64FRE_SERVER_EVAL_RU-RU-IRM_SSS_X64FREE_RU-RU_DV5.ISO
Выберите язык для установки Windows 2012 R2 Server:
Нажмите кнопку Установить для выполнения новой установки Windows 2012 R2 Server или выберите восстановление системы.
Выберите вариант операционной системы Windows Server 2012 R2:
Предлагается 2 варианта сборки Windows Server 2012 R2:
- Windows Server 2012 R2 Standard
- Windows Server 2012 R2 Datacenter
Каждый из этих двух вариантов может быть установлен с графическим интерфейсом пользователя или только основные серверные компоненты.
Ознакомьтесь с условиями лицензии на Windows Server 2012 R2 Standard.
Ознакомительная версия Windows Server 2012 поставляется бесплатно! Код активации не требуется!
Выберите тип установки Windows Server 2012 R2
Предлагается 2 типа установки Windows Server 2012 R2:
- Обновление старой версии сервера
- Новая установка сервера на чистый жесткий диск
Выберите жесткий диск для установки Windows Server 2012 R2.
После установки основных компонентов Windows Server 2012 R2 и перезагрузки системы придумайте и введите пароль для Администратора 2 раза.
Теперь Windows Server 2012 R2 полностью установлен. Для входа в систему Windows Server 2012 R2 необходимо нажать одновременно три клавиши Ctrl, Alt и Del (Delete).
Введите пароль Администратора.
Перед Вами рабочий стол Windows Server 2012 R2 Standard
Создание сервера в Windows 7 с помощью Virtualbox
Привет, всем!
Хочу рассказать о том как я создавал веб-сервер для разработки и тестирования PHP приложений на локальной машине и как потом я его «вывел в свет».
Предыстория
В качестве собственного и профессионального развития я решил более тесно познакомится с Linux системой и, в частности, с настройкой веб-сервисов. До этого для разработки и тестирования PHP приложений я пользовался пакетом Denwer для Windows (apache+php+mysql), который вообщем-то со своей задачей справлялся, но не отражал (и не отражает) современной действительности — все-таки хостинг с Windows не так популярен.
Желание иметь полный доступ к серверу и нежелание платить за это удовольствие исключили из рассмотрения вариант покупки VPS. А потому я решил организовать Linux сервер на своем локальном компьютере.
Задача
- Поставить виртуальный Linux
- Настроить сетевое соединение гостевой ОС (Linux) и хост (Windows 7)
- Установить необходимые сервисы
- Сделать доступ к серверу из внешнего мира
Инвентарь
Windows 7 Home Basic
VirtualBox 4.0.8
Образ ubuntu-11.04-server-i386.iso
Приступим
Первый пункт, наверное самый простой. Virtualbox обладает простым интерфейсом и процесс создания виртуальной машины не вызывает трудностей. Для своего сервера я выбрал минимальные настройки производительности — (128Мб оперативной памяти, usb устройства отключены, никаких графических ускорений и прочих изысков — для сервера должно быть ок ), чтобы не слишком загружать основную систему.
Параметры сети
В меню Virtualbox в настройках сети для виртуальной машины в качестве типа подключения для первого сетевого адаптера указываем NAT. Тогда сеть в системе поднимется сама и машина будет иметь доступ к внешнему сетевому соединению Windows. Проблема в том, что при таких настройках, Linux система остается недоступной из основной системы.
Но решение есть! Указываем для второго сетевого адаптера значение «Виртуальный адаптер хоста». При установке Virtualbox в системе автоматически дополнительно создается сетевое подключение «VirtualBox Host-Only Network», которое нам пригодится в этом случае. Заходим в «Центр управления сетями и общим доступом» Windows. В настройках этого соединения указываем стандартные для данной задачи параметры: ip — 192.168.0.1, netmask — 255.255.255.0.
Осталось указать нужные параметры в виртуальной системе. Дописываем нужные строки в файл «/etc/network/interfaces»
iface eth1 inet static
address 192.168.0.2
netmask 255.255.255.0
auto eth1
перезапускаем сеть и можно попробовать пинговать Linux.
Таким образом: а) Linux имеет доступ в интернет через сетевое соединение Windows
б) Windows видит сервер и может к нему обращаться по ip — 192.168.0.2 (для удобства можно дописать в файл hosts какое-нибудь удобоваримое имя для этого ip, например «webserver»)
Конфигурация Linux
Что я хочу от своего сервера?
Во-первых, мне нужен веб-сервер с поддержкой PHP — возможность разрабатывать и тестировать приложения на локальной машине меня весьма радует
Во-вторых, мне нужна база данных — MySQL и/или PostgreSQL
В-третьих, мне очень удобно когда сохранив файл в IDE, можно тут же запустив скрипт в консоли или обновив страницу в браузере увидеть изменения. Таким образом, используемая мной IDE также должна иметь доступ к www каталогу на сервере. (чтобы не нужно было дополнительно копировать что-либо куда-нибудь)
В-четвертых, мой сервер должен быть доступен из внешней среды.
Поскольку моя статья не о настройке apache, тонкостях php.ini или бэкапе mysql, то первые три пункта я пропущу и описывать не буду. Скажу лишь, что все что сделал я (что не заработало сразу после установки) — это поправил вывод ошибок в php.ini (по умолчанию был полностью отключен вывод вообще всех ошибок), а также установил xdebug. Третий пункт решается установкой samba и небольшой модификацией файла конфигурации «etc/samba/smb.conf» в разделе Share Definitions, с целью разрешить пользователям доступ к своей директории в home (именно в эту папку помещен DocumentRoot сервера apache).
На данный момент уже можно получить доступ к серверу не только по ssh (open ssh server ставится по умолчанию) через putty, но и по samba — подключив пользовательскую директорию как сетевой диск в Windows.
А вот на последнем пункте я остановлюсь подробнее.
Доступ к серверу из внешнего мира
По сути, задача стоит в том, чтобы все запросы на 80 порт к моему компьютеру перенаправлять на 80 порт моего локального сервера. Такой вот небольшой прокси. Здесь на помощь приходит утилита netsh встроенная в Windows 7.
c:\>netsh
netsh>interface portproxy
netsh interface portproxy>add v4tov4 listenport=80 connectaddress=192.168.0.2 connectport=80 protocol=tcp
Теперь виртуальный веб-сервер доступен при обращении к моему компьютеру по внешнему ip-адресу.
Если для вас, как и для меня, белый внешний ip адрес является роскошью и проще говоря, его нет, то еще одна часть истории для вас!
Пробиваемся на свет
На самом деле я сейчас сделаю финт ушами, но возможно такое решение тоже кому-нибудь пригодится. Мой компьютер находится в локальной сети Новосибирского государственного университета и извне к нему не подобраться. Однако в нашей сети есть такой проект как campus.nsu.ru предоставляющий желающим простенький php хостинг, но что самое главное домен вида username.at.nsu.ru.
Таким образом, для завершения задачи необходимо при обращении на свой публичный домен каким-то образом перенаправлять пользователя по локальной сети на мой компьютер. Самый простой вариант — это создать в www директории на username.at.nsu.ru файлик index.php следующего содержания
Теперь при обращении на username.at.nsu.ru будет отдаваться сгенерированный моим linux сервером ответ. Значение $_SERVER передается с целью сохранить исходные значения запроса. Файл index.php на моем виртуальном сервере принимает и занимается дополнительной обработкой поступившего запроса.
На данный момент сервер работает на моем ноутбуке, доступ осуществляется через публичный домен shurik.at.nsu.ru
Все! Задача решена. Спасибо за внимание.
Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.
Локальный веб-сервер — VirtualBox, Debian, Nginx+php-fpm, MySQL
Дмитрий Корнев
Создавая недавно новый сайт на Yii2 я прилично помучился из-за различий рабочего окружения, которые обеспечивают локальный Open-Server на Windows и реальный сервер с Debian. Это вынудило меня настроить правильный локальный сервер, используя VirtualBox. В статье я расскажу, как это сделать.
Задача
Есть компьютер с Windows 10, где установлен VirtualBox. Создадим виртуальную машину в VirtualBox, установим на неё Debian. Затем настроим на этой машине веб-сервер и установим некоторый софт, необходимый для веб-разработки. Дополнительно настроим общую папку, чтобы удобно работать в ней с кодом сайтов в любимом редакторе под Windows. Открываться сайты тоже будут под Windows.
Виртуалка и Debian
Скачиваем новейший образ для установки Debian. Даю ссылку на страницу с образами, предназначенными для сетевой установки. Они маленькие, не имеют ничего лишнего, хорошо подходят для веб-сервера. Я использую 64-битный образ. На момент написания статьи актуален Debian версии 8.5.
Создаём виртуальную машину:
Объём памяти и диска по своему усмотрению.
Диск особо расходоваться не будет, т.к. мы будем работать с сайтами в общей папке, которая будет подключается к Debian как дополнительный носитель. Тип основного диска по умолчанию, динамический.
Машина подготовлена. Пока не включаем. Заходим в свойства машины, подключаем скаченный установочный образ на CD/DVD:
Пройдёмся по другим настройкам.
Число ядер процессора выбирайте сами, в зависимости от возможностей и потребностей. Обязательно установите отметку «Включить PAE/NX».
Можно выключить разные ненужные вещи, типа удаленного доступа по RDP, звуковой карты, порта USB стандарта 2.0 и т.д.
В сетевых адаптерах выбираем тип подключения «NAT», ниже тут же кликаем «Дополнительно» и заходим в «Проброс портов».
Здесь для SSH указываем порты 3022 и 22, для веба 80 и 80. Остальное заполнять не надо. Этого достаточно.
Почему именно «NAT»? Виртуальную машину сможете использовать только вы, она не будет видна в вашей локальной сети и никак на неё не повлияет. Для меня это важно.
Если вы хотите, чтобы ваша виртуальная машина полноценно добавлялась в вашу локальную сеть, то выбирайте тип подключения «Сетевой мост». Другие компьютеры в вашей локальной сети тоже смогут обращаться к вашей виртуальной машине.
В завершении добавляем общую папку:
Выходим из настроек.
Запускаем машину, устанавливаем Debian.
Процедура установки Debian ничем особо непримечательна. Выбираем вначале обычную установку, я предпочитаю с графическим интерфейсом. По ходу выбираем всякие параметры. Запасаемся терпением.
Ближе к концу установки надо будет выбрать компоненты, которые требуется установить. Рабочий стол и прочий мусор нам на веб-сервере не нужен, снимаем везде отметки. Оставляем только SSH-сервер и стандартные системные утилиты.
Предлагаемый в списке «web server» я тоже предпочитаю не ставить, т.к. там будет Apache, который в современном мире нафиг не нужен. Лучше установить потом самому именно те программы, какие нужны.
В общем, установка завершается, машина перезапускается.
Входим под root-ом:
Всё ок? Небольшая рекомендация. Делайте «снимки» машины на разных этапах настройки и использования. Это полезно! Если в процессе каких-то настроек или других действий что-то пойдёт не так, то вы сможете откатиться к предыдущему состоянию.
Вот сейчас машина успешно стартовала. Выключите её, сделайте снимок. Это займет от силы минуту.
Чтобы выключить машину можно написать poweroff , чтобы перезапустить — reboot .
Настройки
Пока продолжаем работать с созданной машиной через окно VirtualBox. К подключению по SSH вернёмся чуть позже.
В процессе установки Debian, кроме root, обязательно создаётся дополнительный пользователь. Если он совсем вам не нужен, то его можно удалить:
Дополнительный пользователь иногда полезен. Например, когда вы будете работать с Composer. Этот менеджер пакетов считает, что работа под root небезопасна и выдаёт предупреждение, хотя и продолжает исправно работать.
По умолчанию Debian не позволяет подключиться по SSH, используя пользователя root. Выглядит это так:
Дополнительным пользователем подключаться можно сразу.
Чтобы по SSH можно было зайти root-ом редактируем файл /etc/ssh/sshd_config .
Чтобы изменения вступили в силу перезагружаем машину.
Для подключений по SSH в Windows удобно использовать PuTTY. Адрес машины 127.0.0.1, порт 3022:
Теперь уже можно большую часть времени работать с виртуальной машиной через SSH. Оно удобнее, чем через окно VirtualBox. Окно PuTTY можно свободно растягивать и его содержимое будет под это подстраиваться. В вашем распоряжении буфер обмена и даже мышь.
Чтобы работала общая папка требуется установить дополнения гостевой ОС.
Для начала подключаем образ:
Теперь монтируем его:
Предварительно устанавливаем требуемые пакеты:
Теперь сама установка дополнений:
Результат успешной установки:
Перезапускаем машину и радуемся. Теперь у нас заработала общая папка. В виртуальной машине в моём случае это: /media/sf_Webdev . На основной машине она соответствует: c:\VirtualDub\Folders\Webdev .
Работа с общей папкой в виртуальной машине осуществляется из под пользовательской группы vboxsf . Это означает, что если пользователь (под которым вы работаете) не входит в эту пользовательскую группу, то он не сможет записывать в общую папку. Для него в папке по умолчанию режим «readonly».
Чтобы добавить пользователя в эту группу выполняем:
Пользователь www-data по умолчанию используется Nginx.
Веб-сервер
Переходим к настройке веб-сервера:
В общей папке создадим папку первого сайта: /media/sf_Webdev/site.loc .
Соответственно она появится и на основной машине. В эту папку поместим тестовый файл index.php с кодом:
Не имеет значения, как именно вы создаёте папки и файлы в общей папке. Можете всё это делать уже из вашей основной системы.
Создадим символическую ссылку для каталога сайта:
Создадим для сайта файл настроек Nginx /etc/nginx/sites-available/site.loc .
Подключим файл настроек:
Теперь в основной системе отредактируем hosts-файл c:\Windows\System32\drivers\etc\hosts .
В него надо добавить строчку:
Всё! Настало время в веб-браузере основной системы попробовать открыть сайт http://site.loc . Если всё в порядке, то вы увидите информацию по PHP виртуальной машины.
Если сайт не открылся, вы получили белую страницу, то скорее всего у вас в основной системе уже используется каким-то приложением порт 80. Соответственно проброс этого порта из виртуальной системы в основную не удался и ничего не работает.
Чтобы выяснить, выключите пока виртуальную машину. В основной системе откройте консоль:
Выполняем в ней:
Получим примерно такое:
Здесь первая строка с адресом 0.0.0.0:80 – это признак, что 80-ый порт в настоящее время используется. В конце этой строки цифры, в примере это 5684 . Данный номер — это ID процесса приложения.
Чтобы узнать, что это за приложение, открываем диспетчер задач:
На вкладке «Подробности» делаем сортировку по колонке «ИД процесса» и ищем нужный номер. В моём случае это оказался Skype.
По умолчанию Skype использует именно 80-ый порт для соединений, но это можно изменить в его настройках. Убираем галочку «Для дополнительных входящих соединений следует использовать порты 80 и 443». Выходим из настроек, перезапускаем Skype.
Той же командой в консоли ещё раз делаем проверку:
Теперь 80-ый порт никем не используется. Запускаем обратно виртуальную машину и снова пробуем открывать сайт. Теперь, если вы всё делали по инструкции, то он точно должен открыться!
Nginx
При подобном использовании веб-сервера внутри VirtualBox есть одна особенность с Nginx. Файлы сайтов получается будут лежать и модифицироваться в общей папке. Система внутри VirtualBox не будет знать, когда файлы в этой папке были модифицированы, отсюда проблема. Nginx думает, что файлы не менялись и добросовесно отдаёт старые их версии, закешированные.
Очень многие сталкиваются с этими граблями. Типичный случай: вы изменили файл CSS или JS, а на сайте не видно этих изменений, файл используются старый.
Мне помогло решить проблему включение в конфиг Nginx параметра:
Некоторым помогает ещё этот дополнительный параметр:
Поскольку проблема может быть актуальна для всех сайтов, работающих на веб-сервере виртуальной машины, то правильнее включить эти параметры в общем файле /etc/nginx/nginx.conf .
Дополнительная информация по теме.
Вместо обычного MySQL я предпочитаю Percona Server. Многие рекомендуют этот продукт, благодаря скорости и дополнительным фичам. Я использую Percona Server не менее 2 лет и тоже могу его рекомендовать. Для сайта, для любого сайтового движка — это будет просто MySQL, они не увидят разницы.
Я не делал сравнений. Просто однажды перешел на Percona Server и все. Никаких проблем никогда не было. Если при этом есть хоть небольшой прирост скорости, оно стоит того.
Установка Percona Server:
В процессе установки потребуется указать пароль для root-пользователя базы. Не путайте с root-пользователем системы.
Установим дополнительно phpMyAdmin. Последнее время я предпочитаю это делать через Composer. Так проблем меньше, да и версия точно будет новая. Вначале установим сам Сomposer:
Для рабочего софта лучше создать отдельный локальный сайт, пример webdev.loc . Это будет каталог /var/www/webdev.loc . Настройка Nginx аналогична той, что была выше. Пробрасывать этот каталог в основную систему не нужно.
В этом каталоге запускаем установку phpMyAdmin:
Он установится в каталог /var/www/webdev.loc/phpmyadmin .
Теперь из основной системы phpMyAdmin можно открыть: http://webdev.loc/phpmyadmin .
Workbench
Приложение MySQL Workbench — это удобный инструмент для работы с базой. Устанавливать его нужно на основной машине. Для подключения к базе MySQL на виртуальной машине можно использовать SSH. При создании подключения просто устанавливаем параметр «Connection Method» в состояние «Standard TCP/IP over SSH» и далее вписываем уже знакомые параметры:
Рабочий софт
Установка Composer уже была выше. Остальное по желанию.
Если будут предупреждения:
Тогда надо установить предложенное, пример далее. В вашем случае версии могут быть другие, обратите на это внимание.
Vagrant
Это такая вспомогательная программа для VirtualBox. Хотя, работает и с другими системами виртуализации. Позволяет легко и быстро автоматизированно создавать виртуальные машины. Можно создать наподобие той, которую мы уже создали. Работать с Vagrant необходимо из командной строки.
Пишу это здесь просто для информации, что такое есть.
Я пробовал Vagrant. Да, действительно программа делает своё дело. Но мне показалось это лишним и не совсем тем, что надо. Мои соображения на этот счёт:
- Такое полезно тому, кто создаёт виртуальные машины пачками. Не мой случай. Возможно, пока.
- Виртуальные машины при помощи Vagrant создаются на основе готовых образов (боксов), список которых есть на официальном сайте. Они в случае необходимости автоматически загружаются. Честно говоря, я не сильно доверяю этим боксам. Считаю, что безопаснее создать своё. Тем более это не сложно.
В принципе, боксы для Vagrant — это созданные и специально настроенные виртуальные машины VirtualBox. Мы, вот, создали свою виртуальную машину. Её, в теории, можно немного допилить, чтобы использовать в качестве бокса Vagrant. Бокс может быть локальным.
Я когда начал изучать информацию по Vagrant, то меня напугали все эти инструкции в интернете. В каждой автор начинает разбирать конфигурационный файл виртуальной машины, и это поначалу выглядит дико и совсем непросто. Спешу успокоить новичков! Этот файл создается автоматически самим Vagrant-ом. Вы (при желании) можете внести в него дополнительные параметры, а можете и не вносить! Машина просто получит настройки по умолчанию. Часто этого достаточно.
Далее простой пример, как можно создать с помощью Vagrant тот же веб-сервер на базе Debian 8.
Перед тем как начать скачиваем Vagrant с официального сайта и устанавливаем его в любую папку. Важно, чтобы в пути к этой папке не было русских символов.
Открываем консоль в Windows:
Скачиваем нужный бокс и убеждаемся, что он попал в список доступных локально боксов:
Для первой команды название бокса я нашёл в списке по запросу «debian 8 lemp». Вот информация по нему, где автор советует перед использованием бокса выполнить установку плагина:
Такая команда выполняется единожды, если ранее данный плагин ещё не инсталлировался. Плагин позволяет автоматически устанавливать в виртуальную машину дополнения гостевой ОС.
Создаём каталог и переходим в него, например:
Инициализация виртуальной машины:
При этом у нас появляется в этом каталоге файл Vagrantfile . Он содержит конфигурацию будущей машины. Как я уже сказал, настройки можно оставить по умолчанию. Устанавливаем виртуальную машину:
Всё! Через некоторое время машина будет готова.
При установке машины автоматически устанавливаются все актуальные обновления Debian. При каждом старте монтируется общая папка.
Для входа по SSH используем адрес 127.0.0.1, порт 2222, пользователя vagrant , пароль vagrant .
Таким образом, всего несколько команд в консоли и у нас готовая для работы виртуальная машина.
Последующий запуск машины из консоли происходит быстро:
В VirtualBox машину тоже видно:
Docker
Это ещё один альтернативный вариант.
По своей сути Docker предлагает уже не виртуализацию, а создание изолированных контейнеров поверх вашей основной системы. Таких контейнеров на одной системе можно запускать множество. Приложения в каждом из них работают полностью независимо.
Из-за того, что здесь нет полноценной виртуализации, то нет и расхода лишних ресурсов на виртуальные операционные системы. Процессор, диск, память расходуются исключительно на установленные в контейнерах приложения.
Docker предназначен для Linux и использует для создания контейнеров специфику ядра этой операционной системы. В Windows использовать Docker можно двумя способами. Во-первых, есть Boot2docker, который автоматически создаёт, опять же, в VirtualBox виртуальную машину и уже там запускает контейнеры. Во-вторых, можно самостоятельно создать виртуальную машину с Linux и там разворачивать контейнеры.
Автоматически созданная машина Boot2docker-ом:
Помимо уже сказанного есть ещё одна очень весомая фишка.
Мы создаём для разработки сайта один или несколько контейнеров Docker. Зависит от его сложности и масштабов. Потом, когда сайт будет готов, то мы именно эти же контейнеры просто переносим на хостинг! Получается, что сайт продолжает работать в своём родном окружении, уже на совсем другой площадке.
На мой взгляд Docker интересен, но только если вы работаете именно в Linux. Использование контейнеров через виртуализацию трудно назвать изящным вариантом. Поэтому я, как пользователь Windows, отказался от Docker. Во всяком случае, нет пока необходимости.