Быстрый старт в разработке на Drupal

Долгое время я разрабатывал сайты используя платформу Open Server, при этом постоянно приходилось делать рутинные действие, такие как создать базу, создать домен, перезапустить Open Server, скачать и установить ядро, пройти все шаги по созданию и настройке учетной записи, скачать часто используемые модули (Ctools, Views и д.р). В конечном итоге мне надоело при создании нового проекта выполнять все эти рутинные действия и я задумался, а нет ли другой платформы для разработки, чтобы исключить эти шаги и экономить на них время? Долго искать не пришлось и мой выбор пал на виртуальную машину Quickstart и сегодня речь пойдет об ее установке и демонстрации некоторый возможностей, которые стали ключевыми при ее выборе.

Первым делом скачиваем актуальную версию виртуальной машины Quickstart.

Далее скачиваем VirtualBox и устанавливаем его. Установка ничем не отличается от установки обычной программы: указываем путь к папке, в которую будем устанавливать программу и на все вопросы отвечаем положительно. После окончания установки необходимо импортировать виртуальную машину Quickstart, для этого необходимо проделать следующее:

  • Запускаем VirtualBox;
  • В верхнем меню выбираем Файл -> Импорт конфигураций... -> Открыть конфигурацию... -> (выбираем скаченный с drupal.org *.ova файл) ;
  • В настройках выставляем RAM равный 50% от всей системы. (минимум 1024mb, максимум 2048mb) ;
  • Жмем "Импорт" и ждем его окончания.

После окончания импорта виртуальной машины, запускаем ее.

Запуск Quickstart
Запуск Quickstart

Для доступа используем следующие данные:

  • Unix = quickstart:quickstart
  • MySQL = root:quickstart
  • Drupal = admin:admin

Что включено в систему:

  • Поддержка Drupal 7 и Drupal 6;
  • Ubuntu Linux, Apache, MySQL, APC, XDebug, IMAP, UploadProgress;
  • Firefox и Chrome;
  • Drush, drush make и пользовательские drush команды;
  • Установочные скрипты для: Apache Solr, Aegir, Hudson и Oracle;
  • Netbeans и Eclipse сконфигурированные для работы с xDebug;
  • XHProf и Webgrind профили;
  • Cvs, subversion, git, bazaar;

Где что искать. Переходим на рабочий стол запущенной виртуальной машины и открываем там каталог websites. Внутри мы видим:

  • Каталог config - в нем хранятся файлы конфигурации сервера;
  • Каталог logs - в нем хранятся логи;
  • Каталог example.dev - домен, на котором в качестве примера развернут Drupal 7;
  • Каталог example6.dev - домен, на котором в качестве примера развернут Drupal 6;
  • Файл d6.make - файл с информацией для создания доменов на Drupal 6;
  • Файл d7.make - файл с информацией для создания доменов на Drupal 7;
  • Файл default.make - файл с информацией для создания доменов ядре по умолчанию (Drupal 7).

Здесь же будут располагаться созданные домены.

И теперь я покажу то, ради чего я установил у себя эту виртуальную машину. Открываем файл d7.make и видим внутри следующее:

core = 7.x
api = 2

projects[drupal][type] = core

В этот файл мы будем писать названия модулей и тем, которые при создании домена будут скачиваться. Для примера в конец файла добавил следующие строки:

projects[] = admin_menu
projects[] = module_filter

Пришло время создать первый домен, его название будет test.dev. Запускаем терминал и вводим туда следующую команду:

drush qc --domain=test.dev

Для удаления домена используем следующую команду:

drush qd --domain=test.dev

Вот так всего в 2 команды можно быстро создавать и удалять домены.

Очень большим плюсом Quickstart перед OpenServer является то, что на него можно без проблем поставить необходимые библиотеки и компоненты сервера, которые могут понадобиться в процессе разработки.

В следующий раз я покажу как настроить сервер, чтобы можно было открывать сайты не только внутри сервера, но и из основной системы, а так же как зайти в phpMyAdmin.

Комментарии (11)

Аватар пользователя Товарищ
Товарищ

А поставить на виртуалку убунту и вертеть как угодно - уже не модно?

Аватар пользователя Benya
Benya

Это и есть убунту. Но уже полностью готовая к работе с драшем и прочими плюшками. Зачем настраивать самому, когда уже есть готовая сборка?

Аватар пользователя Товарищ
Товарищ

Для опыта. А то понаставят сборок, а потом не знают как там и что работает, и в итоге не могут разобраться в простейших настройках на боевом сервере.

Аватар пользователя Benya
Benya

У кого опыт есть, тому ставить с нуля нет смысла - трата времени. Урок не о том, как разобраться в убунту, а о том, как ускорить процесс разработки и Quickstart здорово в этом помогает.

Аватар пользователя Борис
Борис

Здравствуйте. Спасибо за статью, сейчас сижу через виртуальную машину.
Возник вопрос - когда хостинг на windows, настройка "Папка для изображений" (настройка в пути admin/config/people/accounts) находится по пути pictures, что соответствует sites\default\files\pictures\. Когда этот же сайт открываешь на хостинге виртуальной машины quickstart, выдается ошибка "Каталог public://pictures не существует или не доступен для записи". Не могли бы вы сказать, какой необходимо записать путь в настройку "Папка для изображений"

Аватар пользователя Benya
Benya

Я бы первым делом смотрел какие права на каталог стоят, скорее всего просто нет прав на запись. Потому что у меня все ок.

Аватар пользователя PVasili
PVasili

А зачем ставить прокладку и в ней запускать drush?  
С таким же успехом, в Open Server drush-ем ставим drupal и все нужные модули и активруем их ;)

Аватар пользователя Andrey
Andrey

Это не прокладка а готовая среда для разработки Drupal сайта. Чтобы не задаваться такими вопросами необходимо ознакомиться с Quick Start (Быстрый старт) на официальном сайте Drupal.org и попробовать весь этот функционал воспроизвести в Open Server и замерить сколько времени это займет. Тот же Drush в Open Server отсутствует и его надо самому установить и настроить в недружелюбной Винде. Можно упомянуть и о распределенной системе управления версиями файлов Git, которую тоже надо самому установить и настроить. И еще много чего. Кстати, чтобы Drush и Git работали в Винде, там куча костылей с прокладками приделывается и функционал урезанный. Без смайлов.

Аватар пользователя Kirill
Kirill

Спасибо! Но эта сборка вижу уже не подерживается(... Хотя я так понимаю она вполне рабочая

Аватар пользователя Benya
Benya

Там есть аналоги. На странице проекта даже если не ошибаюсь ссылки есть