DRUSH 8 für die Drupal Administration auf Managed Server installieren
Neben vielen speziellen Drupal Hosting-Angeboten, sind inzwischen auch managed Server für viele Drupal-Projekte geeignete Umgebungen. Meist erhält der Anwender hierbei auch SSH-Zugang, jedoch aus Sicherheits- und Gewährleistungsgründen keinen vollständigen Root-Zugang. Um nun trotzdem effektiv mit Drupal zu arbeite, vielleicht Synchronisationen durchzuführen oder Drush-Befehle nutzen zu können, müssen Zusatztools wie Composer oder Drush manuell installiert werden.
In unserem Beispiel arbeiten wir auf einem Managed Server der Firma Hetzner. Für Drupal steht hier eine Umgebung mit PHP 5.5 und aktiviertem OPCache zur Verfügung. Der verwendete Account auf diesem Server, sollte sich nicht allzu sehr von den größeren Webhosting-Angeboten inkl. SSH-Zugang unterscheiden. Die Installation von Drush und Co. muss in diesem Fall für jeden Account separat durchgeführt werden. Die Installation selbst erfolgt natürlich ebenfalls auf der Kommandozeile per SSH.
Seit Version 7 wird für Drush Composer benötigt. Um diesen zu installieren, sollte man ein eigenes Verzeichnis im Home-Verzeichnis des Account anlegen, Composer herunterladen und initialisieren:
mkdir ~/bin mkdir ~/bin/composer cd ~/bin/composer wget https://getcomposer.org/composer.phar php composer.phar init
Nun sollten diverse Variablen / Aliase in die Kommandozeilenkonfiguration eingefügt werden:
echo "export COLUMNS" >> ~/.bashrc echo "alias composer='php ~/bin/composer/composer.phar'" >> ~/.bashrc echo "alias php='/usr/bin/php'" >> ~/.bashrc echo "PATH=$HOME/bin:$PATH" >> ~/.bashrc source ~/.bashrc
Nachdem die Konfiguration mit dem "source"-Befehl neu geladen werden, kann der Download und die eigentliche Installation von Drush erfolgen:
wget -O $HOME/bin/drush.zip https://github.com/drush-ops/drush/archive/master.zip unzip -d $HOME/bin $HOME/bin/drush.zip rm $HOME/bin/drush.zip cd $HOME/bin/drush-master composer install --ignore-platform-reqs ln -s $HOME/bin/drush-master/drush $HOME/bin/drush
Mit Hilfe von "drush status" sollte man nun die Version und Funktion von Drush prüfen können:
account@dediXXXX:~$ drush status PHP executable : /usr/bin/php PHP configuration : /etc/php55/cli/php.ini PHP OS : Linux Drush script : /usr/home/account/bin/drush-master/drush.php Drush version : 8.0-dev Drush temp directory : /tmp