Möchten Sie erfahren, wie Sie mehrere Dienste in einem Docker-Container ausführen? In diesem Tutorial zeigen wir Ihnen alle Schritte, die erforderlich sind, um mehrere Dienste in einem Docker-Container auf einem Computer mit Ubuntu Linux auszuführen.

• Ubuntu 18.04
• Ubuntu 19.10
• Docker 19.03.6

In unserem Beispiel führt ein einzelner Docker-Container den MySQL-Dienst und den Apache-Dienst aus.

Der Apache-Dienst überwacht den TCP-Port 80.

Der MySQL-Dienst überwacht den TCP-Port 3306.

Tutorial Docker – Container mit mehreren Diensten

Installieren Sie den Docker-Dienst.

Copy to Clipboard

Laden Sie das Ubuntu-Docker-Image aus dem Online-Repository herunter.

Copy to Clipboard

Listen Sie die auf Ihrem System installierten Docker-Images auf.

Copy to Clipboard

Hier ist die Befehlsausgabe:

Copy to Clipboard

Starten Sie einen neuen Ubuntu-Container mit diesem Docker-Image.

Copy to Clipboard

Jetzt befinden Sie sich in der Container-Befehlszeile.

Copy to Clipboard

In unserem Beispiel wurde das Ubuntu-Image verwendet, um einen neuen Container zu starten.

In unserem Beispiel ist die Container-ID 62f9adcafb62.

In unserem Beispiel hieß der Container MYCONTAINER.

Installieren Sie die Liste der erforderlichen Pakete.

Copy to Clipboard

Installieren Sie den Apache-Dienst.

Copy to Clipboard

Das System fordert Sie auf, eine Zeitzone auszuwählen.

Copy to Clipboard

In unserem Beispiel haben wir die Zeitzone nach Amerika konfiguriert, Sao Paulo.

Copy to Clipboard

Installieren Sie den MySQL-Dienst.

Copy to Clipboard

Bearbeiten Sie die MySQL-Konfigurationsdatei mit dem Namen mysqld.cnf.

Copy to Clipboard

Suchen Sie in der Konfigurationsdatei nach der folgenden Zeile.

Copy to Clipboard

Ändern Sie diesen Positionswert in 0.0.0.0.

Copy to Clipboard

Starten Sie den MySQL-Dienst manuell im Container.

Copy to Clipboard

Greifen Sie auf die MySQL-Befehlszeile zu.

Copy to Clipboard

Legen Sie ein Kennwort für den MySQL-Root-Benutzer fest.

Copy to Clipboard

In unserem Beispiel wurde das Root-Benutzerkennwort auf kamisama123 festgelegt.

Erstellen Sie eine Konfigurationsdatei mit dem Namen supervisord.conf.

Copy to Clipboard

Hier ist der Dateiinhalt.

Copy to Clipboard

Erstellen Sie im Stammverzeichnis des Containers ein Skript mit dem Namen run.sh.

Copy to Clipboard

Hier ist der Dateiinhalt.

Copy to Clipboard

Konfigurieren Sie die richtige Dateiberechtigung.

Copy to Clipboard

Beenden Sie die Container-Befehlszeile.

Copy to Clipboard

Erstellen Sie ein Docker-Image basierend auf diesem Container.

Copy to Clipboard

In unserem Beispiel haben wir ein Docker-Image mit dem Namen MYIMAGE basierend auf dem Container MYCONTAINER erstellt.

Starten Sie einen neuen Docker-Container mit dem erstellten Image.

Copy to Clipboard

Testen Sie Ihren Zugriff auf den Apache-Dienst.

Copy to Clipboard

Hier ist die Befehlsausgabe:

Copy to Clipboard

Testen Sie Ihren Zugriff auf den MySQL-Dienst.

Copy to Clipboard

Hier ist die Befehlsausgabe:

Copy to Clipboard

Herzlichen glückwunsch! Sie haben die Erstellung eines Docker-Images abgeschlossen, das mehrere Dienste anbietet.