So richten Sie einen Drupal-Workflow in cPanel mit Git ein – OSTraining
Veröffentlicht: 2022-06-29Im Gegensatz zu anderen CMS ist das Update des Drupal-Kerns nicht schwierig, aber wegen all der Details irgendwie kompliziert. In diesem Tutorial werden wir eine lokale Drupal 9-Installation implementieren und dann diese Codebasis in ein zentrales Repository auf Bitbucket hochladen (pushen). Wir werden dann die Codebasis von diesem Repository auf den Live-Server herunterladen (ziehen), auf dem die Website gespeichert wird.
Mit diesem (terminalorientierten) Prozess können Sie Drupal-Kern- und -Modulaktualisierungen beschleunigen und Best Practices befolgen.
Es wird davon ausgegangen, dass Sie bereits einen LAMP-Stack auf Ihrem System installiert haben. Weiterhin benötigen Sie einen Terminalzugang auf Ihrem Webserver.
Lesen Sie weiter, um zu erfahren, wie!
Schritt 1: Installieren Sie Drupal 9 lokal
Öffnen Sie die Terminal-Anwendung Ihres Systems und platzieren Sie den Cursor auf Ihrem lokalen Serververzeichnis, normalerweise /var/www/html
auf einem Linux-System.
- Geben Sie Folgendes ein: Composer create-project drupal
composer create-project drupal/recommended-project my_drupal
Dadurch wird die neueste stabile Drupal-Version auf Ihren Computer heruntergeladen.
- Typ :
cd my_drupal/ mkdir config cd web/sites/default/ cp default.settings.php settings.php cd .. sudo chmod -R 777 default/
Diese Terminalbefehle führen die folgenden Aktionen der Reihe nach aus:
- Greifen Sie auf das my_drupal -Verzeichnis zu
- Erstellen Sie ein Verzeichnis namens config
- Greifen Sie auf das Standardverzeichnis zu
- Kopieren Sie die Datei default.settings.php und ändern Sie ihren Namen in settings.php
- Gehen Sie zurück zum Sites-Verzeichnis
- Weisen Sie dem Standardverzeichnis globale Berechtigungen zu, damit das System den Installationsvorgang abschließen kann
Sobald dies abgeschlossen ist, müssen wir eine Datenbank erstellen.
- Geben Sie Folgendes ein: mysql
mysql -u root -p
Geben Sie Ihr MySQL-Root-Passwort ein.
create database my_drupal; exit;
Dadurch wird die Datenbank erstellt, die Sie mit Ihrer Codebasis verknüpfen.
- Öffnen Sie Ihren Webbrowser
- Geben Sie Folgendes ein: localhost/ my_drupal /web
Schließen Sie den lokalen Installationsvorgang ab.
Schritt 2: Erstellen und Hinzufügen eines Schlüssels zum Remote-Repository
Für die Zwecke dieses Tutorials werde ich Bitbucket verwenden. Die Schritte sind denen eines Github-Profils ziemlich ähnlich.
Sobald Sie sich bei Ihrem Bitbucket-Konto angemeldet haben, klicken Sie auf Ihr Profilsymbol, das sich (zum Zeitpunkt des Schreibens dieses Artikels) in der unteren linken Ecke befindet.
- Wählen Sie Persönliche Einstellungen
- Klicken Sie auf SSH-Schlüssel
- Klicken Sie auf Schlüssel hinzufügen
Sie werden ein Popup-Fenster sehen, das Sie zur Eingabe einer Bezeichnung und eines Schlüssels auffordert.
- Geben Sie MyLaptop , BobsPC oder was auch immer Sie möchten ein, um Ihren eigenen Computer bei Bitbucket zu identifizieren
- Öffnen Sie Ihre Terminalanwendung
- Geben Sie Folgendes ein:
ls -al ~/.ssh
.ssh
Der Punkt vor dem Namen sagt uns, dass dies ein verstecktes Verzeichnis ist. Es gibt zwei Möglichkeiten:
- Sie erhalten eine Liste von Dateien, eine dieser Dateien hat die Erweiterung .pub.
- Sie erhalten die Meldung „Datei oder Verzeichnis nicht gefunden“.
Die Datei mit der Endung .pub ist der öffentliche Schlüssel Ihres Systems. Wenn Sie diese Datei nicht sehen, müssen Sie eine erstellen. Wenn Sie die Datei sehen, lesen Sie trotzdem weiter.
- Geben Sie Folgendes ein: ssh-keygen -t rsa
ssh-keygen -t rsa -C "my_email@my_domain.com"
- Drücken Sie die Eingabetaste , um das Standardverzeichnis auszuwählen, in dem der Schlüssel gespeichert werden soll (.ssh).
- Geben Sie dieselbe Passphrase zweimal ein (Sie können dies leer lassen, indem Sie zweimal die Eingabetaste drücken .)
Das System benachrichtigt Sie über den Standort Ihres öffentlichen Schlüssels und seines Fingerabdrucks. Wenn Sie den .pub-Schlüssel bereits auf Ihrem System hatten, treten Sie hier wieder ein.
- Öffnen Sie die Datei .ssh/id_rsa.pub mit Ihrem bevorzugten Code-Editor
- Kopieren Sie den gesamten Text, einschließlich Ihrer E-Mail-Adresse
- Öffnen Sie Ihren Browser und fügen Sie es in den Textbereich ein
- Klicken Sie auf Schlüssel hinzufügen
Dein lokaler Rechner kann sich jetzt mit Bitbucket verbinden.
Schritt 3: Erstellen des Remote-Repositorys
In deinem Bitbucket-Profil:
- Klicken Sie auf Repository erstellen
- Wählen Sie einen Arbeitsbereich und einen Projektnamen ( erstellen Sie sie, wenn dies das erste Mal ist )
- Geben Sie Ihrem Repo einen richtigen Namen
- Fügen Sie keine README-Datei hinzu
- Schließen Sie keine .gitignore-Datei ein
- Klicken Sie auf Repository erstellen
Schritt 4: Füge das lokale Repository zu Bitbucket hinzu
- Typ :
cd /var/www/html/my_drupal/web mv example.gitignore .gitignore git init git add . git commit -m 'Fresh Drupal installation'
Sie greifen auf das Stammverzeichnis Ihrer Drupal-Installation zu, ändern den Namen der Datei example.gitignore in .gitignore, initialisieren Ihr lokales Repository, fügen die Dateien zum Git-Staging-Bereich hinzu und übernehmen schließlich diese „Änderungen“ (das Repo war ursprünglich .gitignore). leer) in das Repository.
- Typ :
git remote add origin [email protected]:[MY_PROJECT]/my-drupal.git git push -u origin master
Sie können diese beiden Befehle von der Seite des Repositorys bei Bitbucket kopieren und einfügen.
- Geben Sie yes ein, wenn Sie dazu aufgefordert werden
- Geben Sie Ihre Passphrase ein
Überprüfen Sie das Repository auf Bitbucket. Fast alle Dateien im Webverzeichnis ( Ihr lokales Repo ) wurden in Ihr Remote-Repository kopiert. Sehen Sie sich das Verzeichnis sites/default an.
Beachten Sie, dass die Datei settings.php fehlt. Dies liegt daran, dass es in der .gitignore-Datei enthalten ist.
- Öffnen Sie Ihr Terminal und
- Typ : nano .gitignore
- Geben Sie Strg+x ein, um den Nano-Editor zu schließen
Wenn Sie sich die Karten im ersten Bild dieses Tutorials ansehen, werden Sie feststellen, dass wir die Aufgaben von Karte 1 bereits erledigt haben und in Karte 2 nur noch eine Aufgabe übrig ist. Fahren wir mit dem letzten Teil dieses Prozesses fort .
Schritt 5: Erstellen Sie eine Live-Datenbank
Öffnen Sie Ihr Dashboard bei Ihrem Hosting-Provider und erstellen Sie ein neues Drupal-Konto mit Ihrem Domainnamen.
- Klicken Sie auf den Drupal-Ein-Knopf-Installer.
- Klicken Sie auf Konto erstellen
Dies kann von Anbieter zu Anbieter unterschiedlich sein, hier müssen Sie sich also selbst zurechtfinden.
Sie erhalten eine E-Mail mit einem Drupal-Benutzer (admin) und einem Drupal-Passwort. Darüber hinaus erhalten Sie auch den Benutzernamen und das Passwort für Ihr cPanel-Konto. Das sind die, die wir brauchen. Sie sind auch auf Ihrem Dashboard bei Ihrem Hosting-Provider verfügbar.
- Klicken Sie auf Enable SSH , damit wir auf das Terminal auf dem Live-Server zugreifen können.
- Klicken Sie auf den cPanel- Link
- Geben Sie
databases
in das Suchfeld ein - Wählen Sie MySQL-Datenbanken aus
Das Ein-Klick-Installationsprogramm hat eine Datenbank erstellt. Löschen Sie diese Datenbank.
- Geben Sie einen richtigen Namen für Ihre Datenbank ein.
Beachten Sie das Datenbankpräfix, das automatisch von cPanel hinzugefügt wird ( in den meisten Fällen Ihr Benutzername ).
Schritt 6: Importieren Sie die lokale Datenbank
- Öffnen Sie Ihre Terminalanwendung
- Typ :
mysqldump -u root p my_drupal > ~/[path/to/your/desktop]/[cpanel_sql_db_name].sql
- Geben Sie Ihr SQL-Root-Passwort ein
Dadurch wird eine Kopie Ihrer Datenbank erstellt und auf Ihrem Desktop abgelegt. Diese Datenbank auf dem Desktop muss denselben Namen haben wie die, die Sie auf cPanel erstellt haben.
Wenn Sie MySQL Version 8 auf Ihrem Rechner haben, müssen Sie höchstwahrscheinlich die Datenbank anpassen, damit sie mit MySQL 5 funktioniert ( verfügbar bei Ihrem Hosting-Provider ).
- Typ :
sed -i -e 's/utf8mb4_0900_ai_ci/utf8mb4_unicode_ci/g' [cpanel_sql_db_name].sql
Dies ist der Linux-Befehl zum Ausführen dieser Operation.
- Öffnen Sie Ihr cPanel- Dashboard
- Geben Sie
phpMyAdmin
in das Suchfeld ein und wählen Sie es aus - Klicken Sie auf den Namen Ihrer Datenbank, um sie auszuwählen. Es sollte leer sein ( Keine Tabellen in der Datenbank gefunden )
- Klicken Sie auf Importieren
- Klicken Sie auf Datei auswählen
- Wählen Sie die Datenbank auf Ihrem Desktop aus
- Scrollen Sie nach unten und klicken Sie auf Los
Dies dauert ein paar Minuten, also haben Sie bitte etwas Geduld.
Schritt 7: Leiten Sie Ihre Domain um
Drupal wird innerhalb des Webverzeichnisses gespeichert. Um auf Ihre Website zuzugreifen, müssen Sie also die URL eingeben: https://yoursite.xxx/web
Wenn Sie einen Cloud-Dienst verwenden, ist dies kein Problem, Sie können Ihre Hosts-Datei bearbeiten. Mit cPanel ist dies (soweit ich weiß) nicht möglich. Sie müssen eine permanente URL-Umleitung erstellen.
- Öffnen Sie Ihr cPanel-Dashboard
- Geben
Redirects
in das Suchfeld ein - Drücken Sie die Eingabetaste
- Wählen Sie Permanente Weiterleitung (301)
- Wählen Sie den Namen Ihrer Domain aus der Dropdown-Liste aus
- Fügen Sie den Weiterleitungslink hinzu
- Klicken Sie auf Hinzufügen
- Geben
Domains
in das Suchfeld ein - Drücken Sie die Eingabetaste
- Klicken Sie auf den Umschalter HTTPS-Umleitung erzwingen
Schritt 8: Laden Sie die Codebasis hoch
- Öffnen Sie Ihr cPanel-Dashboard
- Geben Sie Dateimanager in das Suchfeld ein
- Drücken Sie die Eingabetaste
- Doppelklicken Sie auf das Verzeichnis public_html
- Klicken Sie oben rechts auf dem Bildschirm auf die Schaltfläche Einstellungen
- Aktivieren Sie Versteckte Dateien anzeigen (dotfiles )
- Klicken Sie auf Speichern
- Klicken Sie auf Alle auswählen
- Klicken Sie auf Löschen
- Öffnen Sie den Dateimanager Ihres Systems
- Komprimieren Sie den gesamten Ordner my_drupal
- Öffnen Sie den cPanel-Dateimanager
- Klicken Sie im Verzeichnis public_html auf Hochladen
- Klicken Sie auf Datei auswählen
- Laden Sie die ZIP-Datei hoch
- Klicken Sie auf Zurück , sobald die Datei auf den Server hochgeladen wurde
- Klicken Sie mit der rechten Maustaste auf die ZIP- Datei und wählen Sie Extrahieren > Dateien extrahieren > Schließen
- Doppelklicken Sie auf den Ordner my_drupal
- Stellen Sie sicher , dass Sie die Option Versteckte Dateien anzeigen aktiviert haben
- Klicken Sie auf Alle auswählen
- Klicken Sie auf Verschieben
- Wählen Sie das Verzeichnis public_html aus
- Klicken Sie auf Dateien verschieben
- Klicken Sie auf eine Ebene höher
- Klicken Sie mit der rechten Maustaste auf die ZIP- Datei und klicken Sie auf Löschen
- Entfernen Sie die ZIP-Datei auch von Ihrem lokalen Server
- Öffnen Sie Ihr Terminal oder Ihren Dateimanager
- Kopieren Sie die settings.php-Datei der lokalen Installation auf Ihren Desktop
- Öffnen Sie die Datei mit Ihrem bevorzugten Code-Editor
- Ersetzen Sie den Benutzernamen durch den von Ihrem Hosting-Provider bereitgestellten Benutzernamen ( Machen Sie dasselbe mit dem Namen der Datenbank und dem Passwort – siehe Schritt 5 ).
- Speichern und schließen Sie die Datei
- Öffnen Sie den Dateimanager im cPanel- Dashboard
- Klicken Sie auf public_html/web/sites/default
- Klicken Sie auf Hochladen
- Wählen Sie die Datei settings.php von Ihrem Desktop aus
- Klicken Sie auf Ja , um die Datei zu überschreiben
- Klicken Sie auf Zurück
- Ändern Sie die Datei- und Verzeichnisberechtigungen gemäß dem Bild unten
- Klicken Sie auf eine Ebene höher
- Ändern Sie die Berechtigungen des Standardordners auf 0755
Schritt 9: Stellen Sie die PHP-Version auf Ihrem Server ein
Drupal erfordert mindestens PHP 7.3.
- Öffnen Sie Ihr cPanel- Dashboard
- Geben
Select PHP
in das Suchfeld ein - Drücken Sie die Eingabetaste
- Wählen Sie 7.4
- Klicken Sie auf Als aktuell festlegen
- Überprüfen Sie die Opcache- Erweiterung
- Geben Sie [ yoursite.xxx/web
[yoursite.xxx/web]
in die Adressleiste Ihres Browsers ein - Klicken Sie auf Anmelden mit dem Benutzernamen und Passwort Ihrer lokalen Drupal-Installation
- Klicken Sie auf die Registerkarte Bearbeiten und ändern Sie bei Bedarf Ihr Passwort
Schritt 10: Fügen Sie den Produktionsserverschlüssel zu Bitbucket hinzu
- Öffnen Sie Ihr cPanel- Dashboard
- Geben
Terminal
in das Suchfeld ein - Klicken Sie auf Eingabe
- Klicken Sie auf Ich verstehe und möchte fortfahren
- Wiederholen Sie den in Schritt 2 beschriebenen Vorgang
- Geben Sie Folgendes ein :
less ~/.ssh/id_rsa.pub
less ist ein Terminal-Editor
- Kopieren Sie den Schlüssel und fügen Sie ihn wie in Schritt 2 gezeigt ein, diesmal für den Servercomputer
- Typ :
q
Das lässt Sie weniger aussteigen.
Sie haben einen Schlüssel für jede Maschine ( oder virtuelle Maschine ), die mit Bitbucket verbunden ist.
Schritt 11: Klonen Sie das Remote-Repository auf den Produktionsserver
- Öffnen Sie die Terminalanwendung Ihres Servers
- Typ :
cd public_html rm -rf web git clone [email protected]:[YOUR_PROJECT]/my-drupal.git web
Sie löschen den Webordner und ersetzen ihn durch das Remote-Repository. Sie erhalten den letzten Terminalbefehl, wenn Sie das Bitbucket-Repository öffnen und auf die Schaltfläche Klonen klicken ( vergessen Sie nicht, Web am Ende des Befehls hinzuzufügen! ) .
Schritt 12: Installieren Sie ein Modul oder Design
- Öffnen Sie die Terminalanwendung Ihres lokalen Systems
- Typ :
cd /var/www/html/my_drupal composer require drupal/bootstrap
- Geben Sie
cd web
ein, um in das Webverzeichnis zu gelangen - Typ :
git add . git commit -m 'Bootstrap theme installation' git status
- Geben
git push
- Geben Sie bei Bedarf die Passphrase ein
- Öffnen Sie das Terminal auf Ihrem Remote-Server.
- Geben Sie ein ( gegebenenfalls Passphrase eingeben ):
git fetch git status
Wenn Sie Folgendes sehen: Ihr Zweig liegt um 1 Commit hinter 'origin/master' und kann vorgespult werden,
- Typ :
git merge
Dadurch wird der Code auf Ihrem Server mit dem Code zusammengeführt, der aus dem Remote-Repository abgerufen wird.
- Gehen Sie zum Themenbereich Ihres Drupal-Backends, das Bootstrap-Thema sollte dort sein
HINWEIS: Sie müssen diesen letzten Schritt nur jedes Mal wiederholen, wenn Sie ein Modul herunterladen, den Drupal-Kern aktualisieren oder den CSS-Code Ihres Themas bearbeiten.
Fehlerbehebung
Wenn Sie nach der Installation von Drupal auf dem Produktionsserver 404-Fehlerseiten erhalten,
- Löschen Sie die .htaccess-Datei
- Laden Sie es erneut auf den Server hoch
Ich hoffe, Ihnen hat dieses Tutorial gefallen. Danke fürs Lesen!