Free Tier: WordPress auf einer Ubuntu-Instanz installieren
In diesem Tutorial richten Sie mit einem Oracle Cloud Infrastructure Free Tier-Account eine Ubuntu-Instanz ein. Als Nächstes installieren Sie einen Apache-Webserver, PHP 8, MySQL und schließlich WordPress. Nach der Installation greifen Sie über das Internet auf die neue WordPress-Installation zu. Dieses Tutorial enthält alle erforderlichen Schritte zum Einrichten eines virtuellen Netzwerks, einer Compute-Instanz und zum Verbinden des Hosts mit dem Internet.
Zu den wichtigsten Aufgaben gehören:
- Richten Sie ein Compartment für Ihre Entwicklungsarbeit ein.
- Installieren Sie eine Ubuntu Linux-Instanz, und verbinden Sie sie mit einem virtuellen Cloud-Netzwerk (VCN).
- Richten Sie ein virtuelles Cloud-Netzwerk in Oracle Cloud Infrastructure und zugehörige Netzwerkservices ein, die für die Verbindung eines Hosts mit dem Internet erforderlich sind.
- Richten Sie
SSH
-Verschlüsselungsschlüssel für den Zugriff auf den Ubuntu Linux-Server ein.
- Konfigurieren Sie Ingress-Regeln für ein VCN.
- Konfigurieren Sie Apache, PHP 8, MySQL und WordPress auf der VM.
- Stellen Sie über das Internet eine Verbindung zur Instanz her.
Im Folgenden finden Sie ein vereinfachtes Diagramm des Setups für die Linux-VM.
Weitere Informationen finden Sie hier:
Bevor Sie beginnen
Um dieses Tutorial erfolgreich abzuschließen, benötigen Sie Folgendes:
- Free Tier-Account für Oracle Cloud Infrastructure. Kostenlos starten.
- MacOS-, Linux- oder Windows-Rechner mit installierter
SSH
-Unterstützung.
1. Compartment für Entwicklung einrichten
Konfigurieren Sie ein Compartment für Ihre Entwicklung.
Erstellen Sie ein Compartment für die Ressourcen, die Sie in diesem Tutorial erstellen.
- Melden Sie sich bei der Oracle Cloud Infrastructure-Konsole an.
- Öffnen Sie das Navigationsmenü, und klicken Sie auf Identität und Sicherheit. Klicken Sie unter Identität auf Compartments.
- Klicken Sie auf Compartment erstellen.
- Geben Sie die folgenden Informationen ein:
- Name:
<your-compartment-name>
- Beschreibung:
Compartment für <your-description>.
- Übergeordnetes Compartment:
<your-tenancy>(Root)
- Name:
- Klicken Sie auf Compartment erstellen.
Referenz: Compartment erstellen
2. Ubuntu Linux-Instanz installieren
Mit dem Workflow VM-Instanz erstellen können Sie eine neue Compute-Instanz erstellen.
Der Workflow führt bei der Installation der Instanz mehrere Schritte aus:
- Erstellt und installiert eine Compute-Instanz mit Ubuntu Linux.
- Erstellt ein VCN mit dem erforderlichen Subnetz und den erforderlichen Komponenten, um die Ubuntu Linux-Instanz mit dem Internet zu verbinden.
- Erstellt ein
SSH
-Schlüsselpaar, mit dem Sie eine Verbindung zur Instanz herstellen können.
Um mit der Installation einer Instanz mithilfe des Workflows VM-Instanz erstellen zu beginnen, gehen Sie wie folgt vor:
Die angegebenen Schritte gelten für einen Free Tier-Account. Wenn Sie einen kostenpflichtigen Account verwenden, können sich die Schritte von den hier beschriebenen unterscheiden.
3. Internetzugriff aktivieren
Der Workflow VM-Instanz erstellen erstellt automatisch ein VCN für Ihre VM. Fügen Sie dem Subnetz eine Ingress-Regel hinzu, um Internetverbindungen auf Port 80 zuzulassen.
Führen Sie die folgenden Schritte aus, um das öffentliche Subnetz des VCN auszuwählen und die Ingress-Regel hinzuzufügen.
4. Apache, PHP 8, MySQL und WordPress installieren und konfigurieren
Installieren und konfigurieren Sie den Apache-Webserver und PHP für die Ausführung auf der Ubuntu Linux-Instanz.
Stellen Sie eine Verbindung zur Ubuntu-Instanz her, und konfigurieren Sie die Firewalleinstellungen. Gehen Sie wie folgt vor:
- Melden Sie sich bei Ihrem Free Tier-Account an.
- Öffnen Sie das Navigationsmenü, und klicken Sie auf Compute. Klicken Sie unter Compute auf Instanzen.
- Klicken Sie auf den Link zur Instanz, die Sie im vorherigen Schritt erstellt haben.
Notieren Sie die vom System erstellte öffentliche IP-Adresse aus dem Abschnitt "Instanzzugriff". Mit dieser IP-Adresse können Sie eine Verbindung zur Instanz herstellen.
- Öffnen Sie ein Terminalfenster.
- Wechseln Sie in das Verzeichnis, in dem Sie die
SSH
-Verschlüsselungsschlüssel gespeichert haben, die Sie in Teil 1 erstellt haben. - Stellen Sie mit diesem SSH-Befehl eine Verbindung zur VM her.
ssh -i <your-private-key-file> ubuntu@<your-public-ip-address>
Da Sie den Public Key beim Erstellen der VM angegeben haben, werden Sie mit diesem Befehl bei der VM angemeldet. Sie können jetzt
sudo
-Befehle ausgeben, um den Server zu installieren und zu starten. - Aktualisieren Sie die Firewalleinstellungen.
Aktualisieren Sie als Nächstes die
iptables
-Konfiguration, um HTTP-Traffic zuzulassen. Führen Sie zum Aktualisieren voniptables
die folgenden Befehle aus.sudo iptables -I INPUT 6 -m state --state NEW -p tcp --dport 80 -j ACCEPT
sudo netfilter-persistent save
Die Befehle fügen eine Regel hinzu, um HTTP-Traffic zuzulassen, und speichern die Änderungen an den
iptables
-Konfigurationsdateien.
- Installieren Sie den Apache-Server.
sudo apt update
sudo apt -y install apache2
- Starten Sie dann Apache.
sudo systemctl restart apache2
- Sie können den Server jetzt testen.
Sie können den Server über die Befehlszeile mit
curl localhost
testen. Sie können auch den Browser mit der öffentlichen IP-Adresse verbinden, die der VM zugewiesen ist: http://<your-public-ip-address>. Die Seite sieht etwa wie folgt aus:
- Installieren Sie PHP sowie einige hilfreiche Module mit den folgenden Befehlen.
sudo apt -y install php
sudo apt -y install php-mysql php-curl php-gd php-zip
- Prüfen Sie die Installation, und starten Sie Apache neu.
php -v
sudo systemctl restart apache2
- Fügen Sie der VM eine PHP-Testdatei hinzu.
sudo vi /var/www/html/info.php
- Geben Sie in der Datei folgenden Text ein, und speichern Sie die Datei:
<?php phpinfo(); ?>
- Stellen Sie eine Verbindung zu http://<your-public-ip-address>/info.php her.
Der Browser erstellt eine Liste der PHP-Konfiguration auf der VM, die etwa wie folgt aussieht.
Tipp
Das Image wird sich aufgrund von Betriebssystemupdates davon unterscheiden.Sie haben Apache und PHP erfolgreich auf einer Oracle Cloud Infrastructure-Instanz installiert.
Hinweis
Löschen Sie nach dem Testen die Dateiinfo.php
.
Richten Sie den Apache-Server für das Lesen und Schreiben aus dem bzw. in das Verzeichnis /var/www/html
ein.
- Fügen Sie einen Benutzernamen zur Gruppe
www-data
hinzu, damit Sie das Verzeichnis/var/www/html
bearbeiten können.sudo adduser $USER www-data
- Ändern Sie nun den Eigentümer des Inhaltsverzeichnisses.
sudo chown -R www-data:www-data /var/www/html
- Ändern Sie die Berechtigungen für die Dateien und das Verzeichnis.
sudo chmod -R g+rw /var/www/html
- Starten Sie den Rechner neu, damit die Änderungen wirksam werden.
Als Nächstes installieren und konfigurieren Sie den MySQL-Server und -Client so, dass diese mit WordPress verwendet werden können.
Aufgrund von Konfigurationsänderungen am Ubuntu-MySQL-Setup werden in diesem Tutorial zusätzliche Schritte vor und nach dem Skript
sudo mysql_secure_installation
hinzugefügt. Die neuen Schritte sind erforderlich, damit das Skript mysql_secure_installation
erfolgreich ausgeführt wird.- Installieren Sie das MySQL-Server-Package.
sudo apt -y install mysql-server
Dieser Schritt kann etwas Zeit beanspruchen.
- Melden Sie sich bei MySQL an.
sudo mysql
- Ändern Sie den
root
-Benutzer von MySQL, um die Kennwortauthentifizierung zuzulassen.mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '<your-password>';
Hinweis
Dieses Kennwort ist temporär. Sie setzen das Root-Kennwort in den folgenden Schritten zurück. - Beenden Sie MySQL.
mysql> exit
- Sichern Sie MySQL mit dem Skript
mysql_secure_installation
.- Führen Sie das Skript aus.
sudo mysql_secure_installation
Dadurch wird folgende Ausgabe generiert:
Securing the MySQL server deployment.
- Sie werden zur Eingabe des von Ihnen festgelegten temporären Kennworts aufgefordert.
Enter password for user root:
Geben Sie das Kennwort ein.
- Aktivieren Sie die Kennwortvalidierung:
VALIDATE PASSWORD COMPONENT can be used to test passwords and improve security. It checks the strength of password and allows the users to set only those passwords which are secure enough. Would you like to set up VALIDATE PASSWORD component? Press y|Y for Yes, any other key for No:
- Wählen Sie
Y
aus. - Wählen Sie die Validierungsebene für das Kennwort aus.
There are three levels of password validation policy: LOW Length >= 8 MEDIUM Length >= 8, numeric, mixed case, and special characters STRONG Length >= 8, numeric, mixed case, special characters and dictionary file Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG:
- Ändern Sie das Root-Kennwort.
Using existing password for root. Estimated strength of password: XX Change the password for root ? ((Press y|Y for Yes, any other key for No) :
- Wählen Sie
Y
aus. - Legen Sie das Root-Kennwort fest.
New password: Re-enter new password: Estimated strength of the password: 100 Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) :
Hinweis
Dieser Schritt ersetzt das anfängliche temporäre Kennwort, das zuvor festgelegt wurde. - Wählen Sie
Y
aus. - Wählen Sie die restlichen Sicherheitsoptionen aus.
Remove anonymous users? (Press y|Y for Yes, any other key for No) : Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Success. All done!
Tipp
Es wird empfohlen, den StandardwertY
für alle Optionen zu übernehmen.
- Führen Sie das Skript aus.
- Melden Sie sich mit dem neuen Kennwort bei MySQL an.
mysql -u root -p
- Ändern Sie die Authentifizierungsmethode für MySQL wieder in
auth_socket
.mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH auth_socket;
Tipp
Mit der Authentifizierungsmethodeauth_socket
können Sie sich mitsudo
statt mit einem MySQL-Kennwort authentifizieren. - Beenden Sie MySQL.
mysql> exit
- Melden Sie sich bei MySQL an.
sudo mysql
Ein MySQL-Prompt wird angezeigt.
- Listen Sie die Standarddatenbanken auf.
mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 4 rows in set (0.01 sec)
- Erstellen Sie einen Benutzer für MySQL.
mysql> CREATE USER '<your-user-name>'@'localhost' IDENTIFIED BY '<your-password>'; Query OK, 0 rows affected (0.01 sec)
- Bestimmen Sie den Benutzer zum Administrator.
mysql> GRANT ALL PRIVILEGES ON *.* TO '<your-user-name>'@'localhost'; Query OK, 0 rows affected (0.01 sec)
- Erstellen Sie die WordPress-Datenbank.
mysql> create database wpdb; Query OK, 1 row affected (0.01 sec)
- Prüfen Sie das Ergebnis.
mysql>show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | | wpdb | +--------------------+ 5 rows in set (0.00 sec)
- Leeren Sie die Berechtigungen, um gecachten Speicher zu löschen.
mysql> FLUSH PRIVILEGES; Query OK, 0 rows affected (0.00 sec) mysql> exit Bye
Führen Sie die folgenden Schritte aus, um WordPress auf dem Server zu installieren.
- Öffnen Sie ein Terminalfenster, und erstellen Sie ein
tmp
-Verzeichnis. - Laden Sie die Linux-ZIP-Datei für WordPress von
https://wordpress.org/download/
herunter, und dekomprimieren Sie sie.wget <url-for-download/filename>.tar.gz
tar xvfz <download-file-name>.tar.gz
Der Befehl erstellt ein Verzeichnis
wordpress
, das den PHP-Code für WordPress enthält. - Kopieren Sie den Inhalt des Verzeichnisses
wordpress
in das Verzeichnis/var/www/html
.cp -R /home/<your-username>/tmp/wordpress/* /var/www/html
Der Inhalt des Verzeichnisses
wordpress
wird in das Verzeichnis/var/www/html
kopiert. Dieser Befehl dient nur als Beispiel. Der Befehl kann je nach Verzeichnisname abweichen. - Wechseln Sie in das Verzeichnis
/var/www/html
.cd /var/www/html
- Benennen Sie die Standarddatei
index.html
um.mv index.html index.html.bk
Jetzt wird
index.php
standardmäßig geladen, wenn auf das Root-Verzeichnis zugegriffen wird. - Benennen Sie die Datei
wp-config-sample.php
um.mv wp-config-sample.php wp-config.php
- Aktualisieren Sie die Werte für das MySQL-Setup.
vi wp-config.php
- Führen Sie das Installationsskript aus, indem Sie einen Browser öffnen und folgende URL aufrufen:
http://<your-public-ip-address>/wp-admin/install.php
Hinweis
Erstellen Sie einen Administratoraccount für den WordPress-Blog. Notieren Sie unbedingt die Informationen der Installationsseite. Sie benötigen die Informationen, um sich beim WordPress-Blog anzumelden. - Öffnen Sie den neuen Blog unter:
http://<your-public-ip-address>
Schließen Sie alle anderen Konfigurationen ab, die Sie für WordPress benötigen. Link zur Hilfe:
Sie haben einen WordPress-Blog in einer OCI-Compute-Instanz eingerichtet.
Weitere Schritte
Sie haben erfolgreich einen Apache-Webserver auf Oracle Cloud Infrastructure mit einer Linux-Instanz installiert und bereitgestellt.
Weitere Informationen zur Entwicklung mit Oracle-Produkten finden Sie auf folgenden Websites: