Úvod
I když je Drupal 8 stále v základu jen zabalený archiv obsahující spoustu převážně PHP souborů, který stačí rozbalit v nějakém adresáři, lze toto doporučit jen pro nějaké testování a hraní si s Drupalem. Doporučená cesta je instalace přes Composer:
The recommended way to get the Drupal source code is to use Composer - a PHP dependency manager.
https://www.drupal.org/docs/8/install/step-1-get-the-code
Pozn. Pro rychlou instalaci Drupalu 8 (spolu s Udemi demem např. pro rychlou demonstraci) lze použít od verze 8.6 tzv. quick-start, viz. Two new easy ways to install Drupal https://www.drupal.org/blog/drupal-8-6-0
Naše development prostředí je libovolný Linux s podporou AMP (Apache, MySQL a PHP). Mimochodem na stránkách o instalaci jsou zmíněné dokonce tři různé souběžné Drupal instalace: vývojová (dev), produkční (live site) a záložní (Working backup site).
Composer instalace
Instalace Composeru je jednoduchá a je dobře přímo popsaná na stránkách projektu https://getcomposer.org/download/. Možná s malinkou úpravou:
php composer-setup.php --install-dir=/usr/local/bin --filename=composer
V tomto případě je takováto ruční instalace asi lepší cesta než instalovat balíček obsažený v distribuci Linuxu.
A máme nainstalovaný composer:
root@debian9:~# composer –version
Do not run Composer as root/super user! See https://getcomposer.org/root for details
Composer version 1.8.4 2019-02-11 10:52:10
Drupal instalace pomocí Composeru
https://www.drupal.org/docs/develop/using-composer/using-composer-to-ma…
There are a number of ways that you could install Drupal using composer, however the recommended approach (especially for beginners to Composer) is to use the composer template at drupal-composer/drupal-project.
Před samotnou instalací ještě doporučuji si vyřešit Linuxová oprávnění - composer je nerad spuštěn jako root (https://getcomposer.org/root), a takže je vhodné jej spouštět jako jiný uživatel, webserver zase přistupuje k souborům a adresářům jako uživatel www-data.
Další dobrá věc je mít nainstalovaný git (apt-get install git -y), zbavíte se tím hlášky
sh: 1: git: not found
Takže jdeme na to:
composer create-project drupal-composer/drupal-project:8.x-dev /var/www/drupal-demo/
Instalace pravděpodobně skončí nějakou chybou:
A když máme všechny problémy vyřešené, uvidíme kýžený výsledek:
Trochu čísel nám ukáže, proč instalace chvilku trvala (composer přitom řešil svoje závislosti): náš adresář je velký 194M, obsahuje 6550 složek a 25421 souborů.
Nezapomeneme nastavit náš webserver na složku /var/www/drupal-demo/web/. Oprávnění adresáře /var/www/drupal-demo/web/sites/default/files/ by měla být drwxrwxrwx, takže i náš www-data tam bude moct zapisovat.
Drush = a command line shell for drupal
Drush byl a je neocenitelný pomocník pro ovládání Drupalu z příkazového řádku. V Drupalu 7 to byla jediná volba. Pro Drupal 8 existuje podobný projekt Drupal console. Některou funkcionalitou se překrývají, jindy danou věc umí ten či onen. Takže je dobré mít oba dva nástroje a umět je používat.
Instalace je jednoduchá - při výše uvedeném postupu je již Drush obsažený v naší instalaci. Je to také jediná podporovaná cesta instalace Drushe do Drupalu 8: Drush 9 only supports one install method. It requires that your Drupal 8 site be built with Composer and Drush be listed as a dependency. http://docs.drush.org/en/master/install/
Abychom mohly drush pouštět odkudkoliv, nainstalujeme si Drush Launcher https://github.com/drush-ops/drush-launcher. Je to jednoduché
wget -O drush.phar https://github.com/drush-ops/drush-launcher/releases/download/0.6.0/drush.phar
chmod +x drush.phar
mv drush.phar /usr/local/bin/drush9
Nyní v naší složce s instalací stačí spustit drush9 status
Drupal Console = The Drupal CLI. A tool to generate boilerplate code, interact with and debug Drupal
Podobný nástroj jako drush. A také je rovnou nainstalovaný, a stejně jako pro drush je vhodné si pro něj nainstalovat launcher https://github.com/hechoendrupal/drupal-console-launcher.
curl https://drupalconsole.com/installer -L -o drupal.phar
mv drupal.phar /usr/local/bin/drupal
chmod +x /usr/local/bin/drupal
Instalace databáze
Než se nám Drupal nainstaluje, a než ho pak prvně spustíme, můžeme si zatím připravit databázi. Zde nás nečeká žádná komplikace.
První spuštění
A je to tady. Po všech těch peripetiích je náš Drupal 8 web připravený. Jdem tedy na to.
Většina voleb je jasná, akorát při výběru profilu je třeba mít na paměti, že minimal je už pro zkušenější drupalisty. Standard totiž z jejich hlediska nainstaluje a nakonfiguruje zbytečné věci, které by bylo pak třeba stejně odebírat.
Jazyk doporučuji nechat anglický, alespoň se pak díky anglické terminologii lépe hledají řešení problémů.
Ještě jeden problém je třeba vyřešit, a týká se právě oprávnění (composer vs apache). Detaily https://github.com/drupal-composer/drupal-project/issues/274
Problém se vyřeší takto:
mkdir /var/www/drupal-demo/config
chown www-data /var/www/drupal-demo/config/
Pozn. Dle informací v settings.php by konfigurace Drupalu neměla být ve složkách webserveru.
Konečně hotovo!
Nyní bude následovat seznámení s jednotlivými moduly a jejich nastavením.