Drupal installieren: Unterschied zwischen den Versionen

Aus Hostsharing Wiki
Zur Navigation springen Zur Suche springen
(→‎Mit Composer: var/drupal-8-composer-installationsverzeichnis zu var/drupal-installationsverzeichnis)
Zeile 113: Zeile 113:


== Installation ==
== Installation ==
Folgende Schritte sind im Benutzer xyz00 auszuführen:
$ touch .hsadmin.properties
$ chmod 600 .hsadmin.properties
$ vi .hsadmin.properties
Es muss in diese Datei das Passwort des Paketadministrators, also von xyz00, eingetragen werden. Das ist das gleiche Passwort, das auf https://admin.hostsharing.net funktioniert.
xyz00.passWord=insertpkgadminpasswordhere


Folgende Schritte sind auf dem lokalen Rechner auszuführen, um Drupal mit Hilfe des Ansible Skripts in den eigenen Hostsharing Benutzer zu installieren:
Folgende Schritte sind auf dem lokalen Rechner auszuführen, um Drupal mit Hilfe des Ansible Skripts in den eigenen Hostsharing Benutzer zu installieren:
Zeile 128: Zeile 118:
Klonen des Repositories:
Klonen des Repositories:


  $ git clone https://github.com/tpokorra/Hostsharing-Ansible-Drupal.git
  $ git clone https://codeberg.org/tpokorra/hs.ansible.git


Dann muss die Datei inventory kopiert werden, und entsprechend angepasst werden:
Dann muss die Datei inventory-sample.yml kopiert werden, und entsprechend angepasst werden:


  $ cd Hostsharing-Ansible-Drupal
  $ cd hs.ansible
  $ cp inventory my.inventory
  $ cp playbooks/drupal/inventory-sample.yml inventories/my.drupal.yml
  $ vi my.inventory
  $ vi inventories/my.drupal.yml


In der my.inventory müssen die entsprechenden Werte eingerichtet werden.
In der my.drupal.yml müssen die entsprechenden Werte eingerichtet werden.


Eine Fehlerquelle sind zu lange Namen für user, denn dann kommt die Datenbankverwaltung von hsadmin aus dem Tritt. Bei einem Namen mit 13 Zeichen treten zumindest Fehler auf...
Eine Fehlerquelle sind zu lange Namen für user, denn dann kommt die Datenbankverwaltung von hsadmin aus dem Tritt. Bei einem Namen mit 13 Zeichen treten zumindest Fehler auf...
Zeile 144: Zeile 134:
Dann kann die Installation vom lokalen Rechner aus gestartet werden:
Dann kann die Installation vom lokalen Rechner aus gestartet werden:


  $ ansible-playbook -i my.inventory playbook-drupal.yml -k -K
  $ ansible-playbook -i inventories/my.drupal.yml init.yml
 
$ ansible-playbook -i inventories/my.drupal.yml playbooks/drupal/install.yml
Es kann auch die Option -k weggelassen werden, wenn man sich über einen SSH Key mit xyz00@xyz00.hostsharing.net verbindet.


== Einrichtung ==
== Einrichtung ==

Version vom 7. September 2023, 12:34 Uhr

Drupal bei HS

Überprüft auf Installation der V 8.6.7.

Vorbereitungen

In hsadmin, zum Beispiel mit hsscript:

hsadmin-Shell starten mit:

 hsscript -u xyz00 -i
 Password: ********

Dann nacheinander anlegen:

  • Linux User als Domain-Administrator
  • Subdomain drupal.hs-example.de
  • MySQL-User
  • MySQL Datenbank
 xyz00@hsadmin> user.add({set:{name:'xyz00-drupal',password:'geheim',shell:'/bin/bash',comment:'Drupal CMS'}})
 xyz00@hsadmin> domain.add({set:{name:'drupal.hs-example.de',user:'xyz00-drupal'}})
 xyz00@hsadmin> mysqluser.add({set:{name:'xyz00_drupaluser',password:'geheim'}})
 xyz00@hsadmin> mysqldb.add({set:{name:'xyz00_drupaldb',owner:'xyz00_drupaluser'}})

Drupal installieren

Anmelden als Linux-User xyz00-drupal:

 ssh -l xyz00-drupal xyz00.hostsharing.net

Mit Composer

Siehe auch https://www.drupal.org/docs/develop/using-composer und insbesondere https://www.drupal.org/docs/develop/using-composer/using-composer-to-install-drupal-and-manage-dependencies

 cd doms/drupal.hs-example.de
 composer create-project drupal-composer/drupal-project:8.x-dev var/drupal-installationsverzeichnis --no-interaction

alternativ geht auch mit einer lokalen (und aktuellen Version von Composer)

../lokales-Composer-Verzeichnis/composer.phar  composer create-project drupal/recommended-project var/drupal-installationsverzeichnis --no-interaction

Nun entsteht in dem Ordner var/drupal-installationsverzeichnis/web die neue Drupal Site, die dann noch in das entsprechende Verzeichnis (ich nutze nur noch htdocs-ssl) verlinken:

rmdir htdocs-ssl
ln -s var/drupal-installationsverzeichnis/web htdocs-ssl

Drupal für HS anpassen

doms/drupal.hs-example.de/htdocs

 vi .htaccess
 # If your site is running in a VirtualDocumentRoot at http://example.com/,
 # uncomment the following line:
 # RewriteBase /

wird zu

 # If your site is running in a VirtualDocumentRoot at http://example.com/,
 # uncomment the following line:
 RewriteBase /

Drupal konfigurieren

Im Browser auf die Seite http://drupal.hs-example.de gehen und den Anweisungen folgen.

Drupal1.jpg

Drupal2.jpg

Drupal3.jpg

Drupal4.jpg

Drupal5.jpg

Drupal6.jpg

Drupal7.jpg

Drupal template default für HS konfigurieren

 cd sites/default/files/php/twig
 chmod 644 .htaccess
 edit .htaccess

In der Zeile 11 den Eintrag "-ExecCGI" und "-Includes" löschen, mit diesem Ergebnis:

 Options -Indexes -MultiViews

und dann noch eine .htaccess

 cd ../..
 chmod 644 .htaccess
 edit .htaccess

In der Zeile 2 den Eintrag "-ExecCGI" und "-Includes" löschen, mit diesem Ergebnis:

 Options -Indexes -MultiViews


Danach die Seite im Browser neu laden.

Mit Ansible bei HS installieren

Technische Details

Es gibt ein Ansible Skript, das die Installationsschritte für Drupal automatisiert durchführt.

Die Quellen für das Ansible Skript können hier eingesehen werden: https://github.com/tpokorra/Hostsharing-Ansible-Drupal/

Es wird die aktuelle Version 9 von Drupal installiert.

Es wird die Installationsvariante mit Composer gewählt, weil sich damit Updates am leichtesten durchführen lassen.

Installation

Folgende Schritte sind auf dem lokalen Rechner auszuführen, um Drupal mit Hilfe des Ansible Skripts in den eigenen Hostsharing Benutzer zu installieren:

Klonen des Repositories:

$ git clone https://codeberg.org/tpokorra/hs.ansible.git

Dann muss die Datei inventory-sample.yml kopiert werden, und entsprechend angepasst werden:

$ cd hs.ansible
$ cp playbooks/drupal/inventory-sample.yml inventories/my.drupal.yml
$ vi inventories/my.drupal.yml

In der my.drupal.yml müssen die entsprechenden Werte eingerichtet werden.

Eine Fehlerquelle sind zu lange Namen für user, denn dann kommt die Datenbankverwaltung von hsadmin aus dem Tritt. Bei einem Namen mit 13 Zeichen treten zumindest Fehler auf...

Es wird vorausgesetzt, dass auf dem lokalen Rechner Ansible installiert ist.

Dann kann die Installation vom lokalen Rechner aus gestartet werden:

$ ansible-playbook -i inventories/my.drupal.yml init.yml
$ ansible-playbook -i inventories/my.drupal.yml playbooks/drupal/install.yml

Einrichtung

Nach der Installation kann die Seite hier erreicht werden: https://drupal.example.org

Bitte mit dem Benutzer und dem Passwort anmelden, die in der Datei my.inventory angegeben wurden.

Links