Tutorial: Installieren eines LAMP-Stacks auf einem virtuellen Azure Linux-Computer
Gilt für: ✔️ Linux-VMs
In diesem Artikel werden Sie durch die Bereitstellung eines Apache-Webservers sowie von MySQL und PHP (LAMP-Stack) auf einem virtuellen Ubuntu-Computer in Azure geführt. Um den LAMP-Server in Aktion zu sehen, können Sie optional eine WordPress-Website installieren und konfigurieren. In diesem Tutorial lernen Sie Folgendes:
- Erstellen eines virtuellen Ubuntu-Computers
- Öffnen von Port 80 für Webdatenverkehr
- Installieren von Apache, MySQL und PHP
- Überprüfen der Installation und Konfiguration
- Installieren von WordPress
Dieses Setup ist für schnelle Tests oder Proof of Concept gedacht. Weitere Informationen zum LAMP-Stack, einschließlich Empfehlungen für eine Produktionsumgebung, finden Sie in der Ubuntu-Dokumentation.
Dieses Tutorial verwendet die CLI innerhalb des Diensts Azure Cloud Shell, der ständig auf die neueste Version aktualisiert wird. Wählen Sie zum Öffnen von Cloud Shell oben in einem Codeblock die Option Ausprobieren aus.
Wenn Sie die CLI lokal installieren und verwenden möchten, müssen Sie für dieses Tutorial mindestens die Azure CLI-Version 2.0.30 ausführen. Führen Sie az --version
aus, um die Version zu ermitteln. Informationen zum Durchführen einer Installation oder eines Upgrades finden Sie bei Bedarf unter Installieren der Azure CLI.
Erstellen einer Ressourcengruppe
Erstellen Sie mithilfe des Befehls az group create eine Ressourcengruppe. Eine Azure-Ressourcengruppe ist ein logischer Container, in dem Azure-Ressourcen bereitgestellt und verwaltet werden.
Das folgende Beispiel erstellt eine Ressourcengruppe mit dem Namen myResourceGroup am Standort eastus.
az group create --name myResourceGroup --location eastus
Erstellen eines virtuellen Computers
Erstellen Sie mit dem Befehl az vm create einen virtuellen Computer.
Das folgende Beispiel erstellt eine VM mit dem Namen myVM und erzeugt SSH-Schlüssel, sofern diese nicht bereits in einem Standard-Schlüsselverzeichnis vorhanden sind. Um einen bestimmten Satz von Schlüsseln zu verwenden, nutzen Sie die Option --ssh-key-value
. Der Befehl legt zudem azureuser als Administratorbenutzernamen fest. Sie verwenden diesen Namen später, um eine Verbindung mit dem virtuellen Computer herzustellen.
az vm create \
--resource-group myResourceGroup \
--name myVM \
--image Ubuntu2204 \
--admin-username azureuser \
--generate-ssh-keys
Nach dem Erstellen der VM zeigt die Azure CLI ähnliche Informationen wie im folgenden Beispiel an. Notieren Sie sich den Wert von publicIpAddress
. Diese Adresse wird später verwendet, um auf den virtuellen Computer zuzugreifen.
{
"fqdns": "",
"id": "/subscriptions/<subscription ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
"location": "eastus",
"macAddress": "00-0D-3A-23-9A-49",
"powerState": "VM running",
"privateIpAddress": "10.0.0.4",
"publicIpAddress": "40.68.254.142",
"resourceGroup": "myResourceGroup"
}
Öffnen von Port 80 für Webdatenverkehr
Standardmäßig sind für in Azure bereitgestellte virtuelle Linux-Computer nur eingehende SSH-Verbindungen zulässig. Da dieser virtuelle Computer als Webserver fungieren soll, muss Port 80 für Datenverkehr aus dem Internet geöffnet werden. Verwenden Sie zum Öffnen des gewünschten Ports den Befehl az vm open-port.
az vm open-port --port 80 --resource-group myResourceGroup --name myVM
Weitere Informationen zum Öffnen von Ports für Ihren virtuellen Computer finden Sie unter Öffnen von Ports und Endpunkten für eine VM über die Azure-Befehlszeilenschnittstelle.
Herstellen einer SSH-Verbindung mit Ihrem virtuellen Computer
Wenn Sie die öffentliche IP-Adresse des virtuellen Computers nicht bereits kennen, führen Sie den Befehl az network public-ip list aus. Sie benötigen diese IP-Adresse für mehrere nachfolgende Schritte.
az network public-ip list --resource-group myResourceGroup --query [].ipAddress
Erstellen Sie mit dem folgenden Befehl eine SSH-Sitzung mit dem virtuellen Computer. Ersetzen Sie die korrekte öffentliche IP-Adresse Ihres virtuellen Computers. In diesem Beispiel lautet die IP-Adresse 40.68.254.142. azureuser ist der Administratorbenutzername, der beim Erstellen des virtuellen Computers festgelegt wurde.
ssh azureuser@40.68.254.142
Installieren von Apache, MySQL und PHP
Führen Sie den folgenden Befehl aus, um die Ubuntu-Paketquellen zu aktualisieren und Apache, MySQL und PHP zu installieren. Beachten Sie das Caretzeichen (^) am Ende des Befehls, das Teil des Paketnamens lamp-server^
ist.
sudo apt update && sudo apt install lamp-server^
Sie werden aufgefordert, die Pakete und andere Abhängigkeiten zu installieren. Dieser Prozess installiert die PHP-Erweiterungen, die mindestens für die Verwendung von PHP mit MySQL erforderlich sind.
Überprüfen von Apache
Überprüfen Sie die Version von Apache mit dem folgenden Befehl:
apache2 -v
Nachdem Apache installiert und Port 80 für den virtuellen Computer geöffnet wurde, ist der Zugriff auf den Webserver über das Internet möglich. Öffnen Sie zum Anzeigen der Apache2 Ubuntu-Standardseite einen Webbrowser, und geben Sie die öffentliche IP-Adresse des virtuellen Computers ein. Verwenden Sie die öffentliche IP-Adresse, die Sie zum Herstellen einer SSH-Verbindung mit dem virtuellen Computer verwendet haben:
Überprüfen und Sichern von MySQL
Überprüfen Sie die Version von MySQL mit dem folgenden Befehl (beachten Sie die Großschreibung des V
-Parameters):
mysql -V
Führen Sie das Skript mysql_secure_installation
aus, um die Installation von MySQL zu sichern, u.a. durch Festlegen eines Stammkennworts.
sudo mysql_secure_installation
Sie können optional das Plug-In zur Kennwortüberprüfung einrichten (empfohlen). Legen Sie dann ein Kennwort für den MySQL-Root-Benutzer fest, und konfigurieren Sie die übrigen Sicherheitseinstellungen für Ihre Umgebung. Es wird empfohlen, auf alle Fragen mit „Y“ (ja) zu antworten.
Wenn Sie MySQL-Features (MySQL-Datenbank erstellen, Benutzer hinzufügen oder Konfigurationseinstellungen ändern) ausprobieren möchten, melden Sie sich bei MySQL an. Dieser Schritt ist für den Abschluss des Tutorials nicht erforderlich.
sudo mysql -u root -p
Beenden Sie anschließend die MySQL-Eingabeaufforderung durch Eingabe von \q
.
Überprüfen von PHP
Überprüfen Sie die Version von PHP mit dem folgenden Befehl:
php -v
Wenn Sie weitere Tests durchführen möchten, erstellen Sie schnell eine PHP-Infoseite zum Anzeigen in einem Browser. Die PHP-Infoseite wird mit dem folgenden Befehl erstellt:
sudo sh -c 'echo "<?php phpinfo(); ?>" > /var/www/html/info.php'
Nun können Sie die erstellte PHP-Infoseite überprüfen. Öffnen Sie einen Browser, und rufen Sie http://yourPublicIPAddress/info.php
auf. Ersetzen Sie die öffentliche IP-Adresse Ihres virtuellen Computers. Die Seite sollte ähnlich wie diese Abbildung aussehen.
Installieren von WordPress
Installieren Sie zum Ausprobieren des Stapels eine Beispiel-App. Als Beispiel wird in den folgenden Schritten die Open Source-Plattform WordPress zum Erstellen von Websites und Blogs installiert. Sie können auch andere Workloads wie Drupal und Moodle ausprobieren.
Dieses WordPress-Setup dient nur als Proof of Concept. Informationen zum Installieren des aktuellen WordPress-Pakets in der Produktion mit den empfohlenen Sicherheitseinstellungen finden Sie in der WordPress-Dokumentation.
Installieren des WordPress-Pakets
Führen Sie den folgenden Befehl aus:
sudo apt install wordpress
WordPress konfigurieren
Konfigurieren Sie WordPress für die Verwendung von MySQL und PHP.
Erstellen Sie in einem Arbeitsverzeichnis die Textdatei wordpress.sql
, um die MySQL-Datenbank für WordPress zu konfigurieren:
sudo sensible-editor wordpress.sql
Fügen Sie die folgenden Befehle hinzu, und ersetzen Sie dabei yourPassword durch ein Datenbankkennwort Ihrer Wahl. (Ändern Sie die anderen Werte nicht.) Wenn Sie zuvor zur Überprüfung der Kennwortsicherheit eine MySQL-Sicherheitsrichtlinie eingerichtet haben, stellen Sie sicher, dass das Kennwort die Sicherheitsanforderungen erfüllt. Speichern Sie die Datei .
CREATE DATABASE wordpress;
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER
ON wordpress.*
TO wordpress@localhost
IDENTIFIED BY 'yourPassword';
Führen Sie den folgenden Befehl aus, um die Datenbank zu erstellen:
cat wordpress.sql | sudo mysql --defaults-extra-file=/etc/mysql/debian.cnf
Da die Datei wordpress.sql
Datenbankanmeldeinformationen enthält, löschen Sie sie nach der Verwendung:
sudo rm wordpress.sql
Führen Sie zum Konfigurieren von PHP den folgenden Befehl aus, um einen Text-Editor Ihrer Wahl zu öffnen und die Datei /etc/wordpress/config-localhost.php
zu erstellen:
sudo sensible-editor /etc/wordpress/config-localhost.php
Kopieren Sie die folgenden Zeilen in die Datei, und ersetzen Sie dabei yourPassword durch Ihr WordPress-Datenbankkennwort. (Ändern Sie die anderen Werte nicht.) Speichern Sie dann die Datei.
<?php
define('DB_NAME', 'wordpress');
define('DB_USER', 'wordpress');
define('DB_PASSWORD', 'yourPassword');
define('DB_HOST', 'localhost');
define('WP_CONTENT_DIR', '/usr/share/wordpress/wp-content');
?>
Verschieben Sie die WordPress-Installation in den Dokumentstamm des Webservers:
sudo ln -s /usr/share/wordpress /var/www/html/wordpress
sudo mv /etc/wordpress/config-localhost.php /etc/wordpress/config-default.php
Jetzt können Sie das WordPress-Setup abschließen und auf der Plattform veröffentlichen. Öffnen Sie einen Browser, und rufen Sie http://yourPublicIPAddress/wordpress
auf. Ersetzen Sie die öffentliche IP-Adresse Ihres virtuellen Computers. Die Seite sollte ähnlich wie diese Abbildung aussehen.
Nächste Schritte
In diesem Tutorial haben Sie einen LAMP-Server in Azure bereitgestellt. Sie haben Folgendes gelernt:
- Erstellen eines virtuellen Ubuntu-Computers
- Öffnen von Port 80 für Webdatenverkehr
- Installieren von Apache, MySQL und PHP
- Überprüfen der Installation und Konfiguration
- Installieren von WordPress auf dem LAMP-Server
Im nächsten Tutorial erfahren Sie, wie Sie Webserver mit TLS/SSL-Zertifikaten schützen.