Drush для Drupal

Что такое Drush?

В этой статье я поделюсь с вами некоторой информацией по использованию мощной утилиты Drush, которую я использую для упрощения типовых, шаблонных действий при использовании CMS Drupal.

При необходимости за считанные секунды можно с помощью одного или нескольких действий произвести загрузку и установку СMS Drupal, не вылезая из терминальной строки, сделать резервную копию или восстановить сайт.

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

Преимущества использования Drush

Замечательный пример использования Drush представлен в следующем видео:

Как можно видеть на видео, в схватке столкнулись простой веб-мастер и специалист, освоивший Drush.

По итогу мы c вами можем видеть явное преимущество у специалиста, который производит установку CMS не привычным способом, а с помощью утилиты Drush. Воспользовавшись Drush, специалист сэкономил время и может позволить себе выпить прохладительный напиток или поиграть в настольный футбол, пока его напарник все еще мучается с процедурой установки привычным нам образом.

Способ установки Drush на хостинге Timeweb

Официальная документация по установке Drush представлена по ссылке: клик

  1. Настраиваем подключение по SSH к Вашему аккаунту на хостинге: клик
  2. Копируем ссылку на файл drush.phar из последнего релиза Drush: клик.

На момент составления статьи была версия 8.1.3, прямая ссылка выглядела следующим образом:
https://github.com/drush-ops/drush/releases/download/8.1.3/drush.phar

Загружаем исполняемый файл drush.phar на Ваш аккаунт в удобную для Вас папку по SSH с помощью утилиты wget (в данном случае я произведу загрузку в папку сайта):

user@host:~/drupal_drush/public_html$ 
wget https://github.com/drush-ops/drush/releases/download/8.1.2/drush.phar

По умолчанию при обращении к исполняемому файлу из терминальной строки используется PHP 5.3, что приводит к возникновению ошибки:

user@host:~/drupal_drush/public_html$ php drush.phar 
PHP Parse error:  syntax error, unexpected '[' in phar:///home/c/user/drupal_drush/public_html/drush.phar/includes/startup.inc on line 63

Решением будет использовать более новую версию, например, PHP 7.0.

Утилита whereis php позволяет узнать точный путь до интепретатора нужной версии.

user@host:~/drupal_drush/public_html$ whereis php

php: /usr/bin/php /usr/bin/X11/php /usr/local/bin/php /opt/php5.4/bin/php /opt/php5.6/bin/php /opt/php56/bin/php /opt/php5.3/bin/php /opt/php7.0/bin/php /opt/php54/bin/php /opt/php53/bin/php /opt/php70/bin/php

Введем в терминальной строке следующую команду:

/opt/php7.0/bin/php drush.phar

Таким образом мы с вами успешно получим желаемый вывод доступных команд drush. Каждый раз вводить такую конструкцию достаточно утомительно, поэтому можно создать alias для такой команды, например, создав файл с именем .bashrc в домашней папке аккаунта, а после поместив туда следующую конструкцию: alias drush=”/opt/php7.0/bin/php /абсолютный/путь/до/папки/где/расположен/drush.phar”.

Узнать абсолютный путь помогает утилита pwd, например:

user@host:~/drupal_drush/public_html$ pwd
/home/c/user/drupal_drush/public_html

Далее вводим следующую конструкцию, чем перезагружаем значения cодержимого .bashrc:

user@host:~$ . ./.bashrc

Убедимся в том, что обновление файла произошло, введем утилиту alias, в случае успеха предыдущих действий получим следующий вывод.

alias drush='/opt/php7.0/bin/php /home/c/user/drupal_drush/public_html/drush.phar'

Всё в порядке, теперь при вводе drush в строке мы с вами сразу вызываем нужный файл по нужному нам пути.

В дополнение к приведенной инструкции cтоит заметить, что существует альтернативный способ установки через Composer. Субъективно я менее люблю обозначенный вариант, в связи с чем при необходимости учитывайте наличие альтернативной возможности, о которой можно прочитать в Сети либо в официальной документации по следующей ссылке: клик

Пример использования Drush

Теперь мы с вами можем ввести утилиту drush dl в терминальной строке, и актуальный дистрибутив будет загружен в считанные секунды. Далее останется переместить его в нужную нам папку, а после в одну команду, предварительно создав базу данных на хостинге в разделе “Базы данных MySQL”, можно произвести установку.

drush site-install standard --db-url='mysql://имя_базы данных:пароль@localhost/имя_пользователя_базы' --site-name=Example

Соглашаемся на производимые скриптом, действия, вуаля, установка завершена.

You are about to create a /home/c/user/drupal_drush/public_html/drupal-8.1.3/sites/default/settings.php file and DROP all tables in your 'database_name' database. Do you want to continue? (y/n): y

Starting Drupal installation. This takes a while. Consider using the --notify global option.                                                                                                                                        [ok]

Installation complete.  User name: admin  User password: tmz2Mk5vvf                                                                                                                                                                 [ok]

Congratulations, you installed Drupal!

Заключение

Таким образом мы совместно с вами смогли установить Drupal с помощью всего 2 утилит! Drush обладает очень широким функционалом, поэтому с помощью него можно создавать резервные копии, разворачивать их, устанавливать новые сайты и многое, многое другое!

Надеюсь, что моя вводная статья по использованию Drush не отпугнет вас от использования этой утилиты, а наоборот, заинтересует и даст мотивацию освоить её синтаксис и стать еще большим экспертом при работе со своими проектами на CMS Drupal!

Administrator

Comments are closed.