Diese Anleitung ist hilfreich, wenn Sie:
- Anwendungen in App Engine ausführen
- Cloud SQL als Datenbank verwenden
- phpMyAdmin als Oberfläche für MySQL oder eine Weboberfläche für die Datenbankverwaltung verwenden
Wenn Sie Google Compute Engine verwenden, ist es sinnvoll, einen der Entwicklungsstapel oder eines der Produkte zu verwenden, die über "Click to Deploy" verfügbar sind. Bereitstellungen von Pakten mit MySQL wie LAMP und LEMP sowie Produkte wie Drupal bieten eine Option zur Installation von phpMyAdmin als Teil der Bereitstellung.
Ziele
- phpMyAdmin in der App Engine-Standardumgebung bereitstellen
Kosten
In dieser Anleitung werden kostenpflichtige Komponenten der Cloud Platform verwendet, darunter:
- App Engine
- Cloud SQL
Der Preisrechner kann eine Kostenschätzung anhand Ihrer voraussichtlichen Nutzung generieren.
Hinweis
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- Erstellen Sie eine Cloud SQL-Instanz der zweiten Generation.
- (Optional) Stellen Sie eine App Engine-Anwendung bereit, die die Cloud SQL-Instanz verwendet, oder wählen Sie eine vorhandene Anwendung aus.
Sie können beispielsweise das Test-Gästebuch erstellen und bereitstellen. Zwar ist die eigenständige Bereitstellung von phpMyAdmin ebenfalls möglich, für ein realistisches Szenario wird es jedoch eher mit einer App Engine-Anwendung eingesetzt werden.
phpMyAdmin-Quellcode herunterladen
Damit Sie phpMyAdmin als Dienst Ihrer App Engine-Anwendung bereitstellen können, müssen Sie den Quellcode für phpMyAdmin herunterladen. Gehen Sie so vor:
Geben Sie den folgenden Befehl in ein Cloud Shell-Terminal ein, um den Quellcode für phpMyAdmin Version 4.9.5 herunterzuladen:
wget https://files.phpmyadmin.net/phpMyAdmin/4.9.5/phpMyAdmin-4.9.5-all-languages.tar.gz
Wenn Sie eine andere Version von phpMyAdmin verwenden möchten, finden Sie die Links zu den verfügbaren Versionen auf der phpMyAdmin-Downloadseite.
Erstellen Sie ein neues Verzeichnis. Die Dateien werden in diesem Verzeichnis entpackt.
mkdir phpMyAdmin
Entpacken Sie die Dateien aus dem Archiv in das neue Verzeichnis.
tar -xzvf phpMyAdmin-4.9.5-all-languages.tar.gz -C phpMyAdmin --strip-components=1
Dateien für die Bereitstellung vorbereiten
Zum Bereitstellen von phpMyAdmin müssen Sie drei Dateien erstellen: app.yaml
mit den Konfigurationsinformationen für App Engine, config.inc.php
mit den Konfigurationsinformationen für phpMyAdmin und php.ini
mit der anwendungsspezifischen Konfiguration für PHP.
app.yaml
erstellen
Die App Engine-Konfigurationsdatei gibt an, wie URL-Pfade Anfrage-Handlern und statischen Dateien entsprechen. Darüber hinaus sind Informationen zum Anwendungscode, wie etwa die Anwendungs-ID und die aktuellste Versions-ID, enthalten. So erstellen Sie die Datei:
Erstellen Sie in dem erstellten
phpMyAdmin
-Verzeichnis eine neue Datei mit dem Namenapp.yaml
.cd phpMyAdmin touch app.yaml
Fügen Sie den folgenden Text mit Ihrem bevorzugten Editor in
app.yaml
ein.Wenn Sie phpMyAdmin als erste und einzige Anwendung in App Engine bereitstellen, ändern Sie den Wert für
service
vonphpmyadmin
indefault
.Normalerweise würde phpMyAdmin als Dienst einer vorhandenen Anwendung bereitgestellt und ein Name für den Dienst angeben werden. Wenn Sie jedoch noch keine Anwendung bereitgestellt haben, müssen Sie den Dienstnamen "default" verwenden. Dies ist völlig in Ordnung, wenn Sie den Einsatz von phpMyAdmin auf App Engine im Rahmen dieser Anleitung testen möchten.
Diese Anleitung funktioniert nur mit der App Engine-Standardumgebung.
Speichern Sie die Datei.
config.inc.php
erstellen
So erstellen Sie die phpMyAdmin-Konfigurationsdatei:
Erstellen Sie eine neue Datei mit dem Namen
config.inc.php
.touch config.inc.php
Fügen Sie den folgenden Text mit Ihrem bevorzugten Editor in
config.inc.php
ein.Öffnen Sie Google Cloud Shell und führen Sie den folgenden Befehl aus, um einen zufälligen String für Ihren Blowfish zu erhalten:
php -r "echo password_hash(uniqid(), PASSWORD_BCRYPT).PHP_EOL;"
Fügen Sie das neue Secret anstelle von
{{your_secret}}
inconfig.inc.php
ein.Rufen Sie in der Google Cloud Console die Seite Cloud SQL-Instanzen auf.
Klicken Sie auf die Cloud SQL-Instanz, um die Instanzdetailseite anzuzeigen.
Ersetzen Sie den Wert von
{{your_connection_string}}
in der Variablen$host
durch das Attribut Name der Instanzverbindung.Speichern Sie die Datei.
php.ini
erstellen
phpMyAdmin verwendet Funktionen in seinem Code, die standardmäßig in App Engine deaktiviert sind.
Gehen Sie so vor, um eine php.ini
-Datei hinzuzufügen, damit App Engine die Funktionen wieder aktiviert:
Erstellen Sie die Datei im Verzeichnis
phpMyAdmin
.touch php.ini
Bearbeiten Sie die Datei und fügen Sie die folgende Zeile hinzu:
Speichern Sie die Datei.
Anwendung bereitstellen
Verwenden Sie die folgenden Befehle, um Ihre Anwendung auf App Engine bereitzustellen.
Suchen Sie nach Aktualisierungen für Ihre
gcloud
-Komponenten.gcloud components update
Stellen Sie die Anwendung bereit. Führen Sie dazu den folgenden Befehl aus dem Verzeichnis
phpMyAdmin
aus, in dem sich Ihre Dateiapp.yaml
befindet:gcloud app deploy
Mit diesem Befehl wird die Anwendung wie in der Datei
app.yaml
angegeben für denphpMyAdmin
-Dienst bereitgestellt. Durch die Bereitstellung an einen separaten Dienst lässt sich besser prüfen, dass phpMyAdmin im gleichen Rechenzentrum wie Ihre Hauptanwendung ausgeführt wird und dadurch eine höhere Leistung bringt. Weitere Informationen zum Bereitstellen einer Anwendung über die Befehlszeile finden Sie unter PHP-Anwendung bereitstellen.
phpMyAdmin-Anmeldung
Sie können sich jetzt bei phpMyAdmin anmelden.
Geben Sie in Ihrem Webbrowser die URL für phpMyAdmin ein, um auf die Willkommensseite zu gelangen. Ändern Sie dabei die URL so, dass Ihre App-ID verwendet wird.
https://phpmyadmin-dot-[YOUR_APP_ID].appspot.com
Geben Sie root als Nutzername ein.
Geben Sie das Root-Passwort ein, das Sie bei der Konfiguration des Root-Kontos vergeben haben.
Klicken Sie auf Los.
Denken Sie bei der Entwicklung Ihrer App Engine-Anwendung daran, alle Nutzerkonten mit einem Passwort zu schützen, die Sie mit Zugriff auf Datenbanken in Cloud SQL erstellen.
Fehlerbehebung
App Engine verwendet den Cloud SQL Auth-Proxy, um eine Verbindung zu Cloud SQL-Instanzen der zweiten Generation herzustellen. Weitere Informationen über die Funktionsweise des Cloud SQL Auth-Proxys finden Sie unter Informationen zum Cloud SQL Auth-Proxy.
Die App Engine-Logs in der Google Cloud Console können Informationen über App Engine-Fehler enthalten.
Bereinigen
Nachdem Sie die Anleitung abgeschlossen haben, können Sie die erstellten Ressourcen bereinigen, damit sie keine Kontingente mehr nutzen und keine Gebühren mehr anfallen. In den folgenden Abschnitten erfahren Sie, wie Sie diese Ressourcen löschen oder deaktivieren.
Projekt löschen
Am einfachsten vermeiden Sie weitere Kosten durch Löschen des für die Anleitung erstellten Projekts.
So löschen Sie das Projekt:
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Instanzen löschen
So löschen Sie eine Cloud SQL-Instanz:
- In the Google Cloud console, go to the Instances page.
- Click the name of the SQL instance you that want to delete.
- To delete the instance, click Delete, and then follow the instructions.
Nächste Schritte
- Weitere Informationen über phpMyAdmin.
- Referenzarchitekturen, Diagramme und Best Practices zu Google Cloud kennenlernen. Weitere Informationen zu Cloud Architecture Center