Docker-Images für Lightsail-Container-Services erstellen und testen - Amazon Lightsail

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Docker-Images für Lightsail-Container-Services erstellen und testen

Mit Docker können Sie verteilte, auf Containern basierende Anwendungen erstellen, ausführen, testen und bereitstellen. Amazon-Lightsail-Container-Services verwenden Docker-Container-Images in Bereitstellungen, um Container zu starten.

In diesem Leitfaden zeigen wir Ihnen, wie Sie mit einer Docker-Datei ein Container-Image auf Ihrem lokalen Computer erstellen. Nachdem Ihr Image erstellt wurde, können Sie es dann an Ihren Lightsail-Container-Service senden, um es bereitzustellen.

Um die Verfahren in diesem Leitfaden durchzuführen, sollten Sie über ein grundlegendes Verständnis dessen verfügen, was ein Docker ist und wie er funktioniert. Weitere Informationen zu Docker finden Sie unter Was ist Docker? und im Thema Docker-Übersicht.

Inhalt

Schritt 1: Erfüllen der Voraussetzungen

Bevor Sie beginnen, müssen Sie die zum Erstellen von Containern erforderliche Software installieren und diese dann an Ihren Lightsail-Container-Service verschieben. Beispielsweise müssen Sie Docker installieren und verwenden, um Ihre Container-Images zu erstellen und zu entwickeln, die Sie dann mit Ihrem Lightsail-Container-Service verwenden können. Weitere Informationen finden Sie unter Installieren von Software zur Verwaltung von Container-Images für Ihre Amazon-Lightsail-Container-Services.

Schritt 2: Erstellen einer Docker-Datei und Erstellen eines Container-Images

Führen Sie die folgenden Schritte aus, um eine Docker-Datei zu erstellen, und entwickeln Sie daraus ein mystaticwebsite-Docker-Container-Image. Das Container-Image wird für eine einfache statische Website sein, die auf einem Apache-Webserver auf Ubuntu gehostet wird.

  1. Erstellen eines mystaticwebsite-Ordners auf Ihrem lokalen Computer, in dem Sie Ihre Docker-Datei speichern.

  2. Erstellen Sie eine Docker-Datei in dem Ordner, den Sie gerade erstellt haben.

    Die Docker-Datei verwendet keine Dateierweiterung, wie.TXT. Der komplette Dateiname lautet Dockerfile.

  3. Kopieren Sie einen der folgenden Codeblöcke, je nachdem, wie Sie Ihr Container-Image konfigurieren möchten und fügen Sie es in Ihre Docker-Datei ein:

    • Wenn Sie ein einfaches statisches Website-Container-Image mit einer Hello-World-Nachricht erstellen möchten, kopieren Sie den folgenden Codeblock und fügen Sie ihn in die Docker-Datei ein. In diesem Codebeispiel wird das Ubuntu-18.04-Image verwendet. DieRUN-Anweisungen aktualisieren die Paket-Caches, installiert und konfiguriert Apache und druckt eine Hello-World-Nachricht an das Dokumenten-Stammverzeichnis des Webservers. Die EXPOSE-Anweisung stellt Port 80 auf dem Container bereit, und die CMD-Anweisung startet den Webserver.

      FROM ubuntu:18.04 # Install dependencies RUN apt-get update && \ apt-get -y install apache2 # Write hello world message RUN echo 'Hello World!' > /var/www/html/index.html # Open port 80 EXPOSE 80 # Start Apache service CMD ["/usr/sbin/apache2ctl", "-D", "FOREGROUND"]
    • Wenn Sie Ihren eigenen Satz von HTML-Dateien für Ihr statisches Website-Container-Image verwenden möchten, erstellen Sie einen html-Ordner in demselben Ordner, in dem Sie Ihre Docker-Datei speichern. Legen Sie dann Ihre HTML-Dateien in diesen Ordner.

      Nachdem sich Ihre HTML-Dateien imhtml-Ordner befinden, kopieren Sie den folgenden Codeblock und fügen Sie ihn in die Docker-Datei ein. In diesem Codebeispiel wird das Ubuntu-18.04-Image verwendet. DieRUN-Anweisungen aktualisieren die Paket-Caches und installiert und konfiguriert Apache. DieCOPY-Anweisung kopiert den Inhalt des HTML-Ordners in das Dokumenten-Stammverzeichnis des Webservers. Die EXPOSE-Anweisung stellt Port 80 auf dem Container bereit, und die CMD-Anweisung startet den Webserver.

      FROM ubuntu:18.04 # Install dependencies RUN apt-get update && \ apt-get -y install apache2 # Copy html directory files COPY html /var/www/html/ # Open port 80 EXPOSE 80 CMD ["/usr/sbin/apache2ctl", "-D", "FOREGROUND"]
  4. Öffnen Sie eine Eingabeaufforderung oder ein Terminalfenster, und ändern Sie das Verzeichnis zu dem Ordner, in dem Sie Ihre Docker-Datei speichern.

  5. Geben Sie den folgenden Befehl ein, um das Container-Image mit der Docker-Datei in dem Ordner zu entwickeln. Dieser Befehl entwickelt ein neues Docker-Container-Image namens mystaticwebsite.

    docker build -t mystaticwebsite .

    Sie sollten eine Meldung sehen, die bestätigt, dass Ihr Image erfolgreich entwickelt wurde.

  6. Geben Sie den folgenden Befehl ein, um die Container-Images auf Ihrem lokalen Computer anzuzeigen.

    docker images --filter reference=mystaticwebsite

    Sie sollten ein Ergebnis ähnlich dem folgenden Beispiel erhalten, das das neu erstellte Container-Image anzeigt.

    Ergebnis des Befehls „Docker-Images“

    Ihr neu entwickeltes Container-Image ist bereit, getestet zu werden, indem es zum Ausführen eines neuen Containers auf Ihrem lokalen Computer verwendet wird. Fahren Sie mit dem nächsten Abschnitt Schritt 3: Ausführen Ihres neuen Container-Images in diesem Leitfaden fort.

Schritt 3: Ausführen Ihres neuen Container-Images

Vervollständigen Sie die folgenden Schritte, um das neue Container-Image auszuführen, das Sie erstellt haben.

  1. Geben Sie in einer Eingabeaufforderung oder einem Terminalfenster den folgenden Befehl ein, um das Container-Image auszuführen, das Sie im vorherigen Abschnitt Schritt 2: Erstellen einer Docker-Datei und Erstellen eines Containers dieses Leitfadens entwickelt haben. Die -p 8080:80-Option ordnet den bereitgestellten Port 80 auf dem Container, dem Port 8080 auf Ihrem lokalen Computer zu. Die-d-Option gibt an, dass der Container im getrennten Modus ausgeführt werden soll.

    docker container run -d -p 8080:80 --name mystaticwebsite mystaticwebsite:latest
  2. Geben Sie den folgenden Befehl ein, um die laufenden Container anzuzeigen.

    docker container ls -a

    Sie sollten ein Ergebnis ähnlich dem folgenden Beispiel erhalten, das die neuen laufenden Container anzeigt.

    Ergebnis des Befehls „Docker-Container“
  3. Um zu bestätigen, dass der Container betriebsbereit ist, öffnen Sie ein neues Browserfenster, und navigieren Sie zuhttp://localhost:8080. Sie sollten ein Ergebnis ähnlich dem folgenden Beispiel erhalten. Dies bestätigt, dass Ihr Container auf Ihrem lokalen Computer betriebsbereit ist.

    Statische Website, die auf einem Docker-Container ausgeführt wird

    Ihr neu entwickeltes Container-Image ist bereit, auf Ihr Lightsail-Konto übertragen zu werden, damit Sie es in Ihrem Lightsail-Container-Service bereitstellen können. Weitere Informationen finden Sie unter Verschieben und Verwalten von Containter-Images auf Ihre Amazon-Lightsail-Container-Services.

(Optional) Schritt 4: Bereinigen der Container, die auf dem lokalen Computer ausgeführt werden

Nachdem Sie nun ein Container-Image erstellt haben, das Sie an Ihren Lightsail-Container-Service verschieben können, ist es an der Zeit, die Container zu bereinigen, die auf Ihrem lokalen Computer ausgeführt werden, nachdem Sie die in diesem Leitfaden beschriebenen Verfahren befolgt haben.

Vervollständigen Sie die folgenden Schritte, um die Container zu bereinigen, die auf Ihrem lokalen Computer ausgeführt werden:

  1. Führen Sie den folgenden Befehl aus, um die Container-Services anzuzeigen, die auf Ihrem lokalen Computer ausgeführt werden.

    docker container ls -a

    Sie sollten ein Ergebnis ähnlich dem folgenden erhalten, das die Namen der Container auflistet, die auf Ihrem lokalen Computer ausgeführt werden.

    Ergebnis des Befehls „Docker-Container“
  2. Führen Sie den folgenden Befehl aus, um den ausgeführten Container zu entfernen, den Sie zuvor in diesem Leitfaden erstellt haben. Dadurch wird der Container zwangsweise gestoppt und dauerhaft gelöscht.

    docker container rm <ContainerName> --force

    Ersetzen Sie im Befehl < ContainerName > durch den Namen des Containers, den Sie beenden und löschen möchten.

    Beispiel:

    docker container rm mystaticwebsite --force

    Der Container, der als Ergebnis dieses Leitfadens erstellt wurde, sollte nun gelöscht werden.

Nächste Schritte nach dem Erstellen von Container-Images

Nachdem Sie Ihre Container-Images erstellt haben, verschieben Sie sie an Ihren Lightsail-Container-Service, wenn Sie bereit sind, diese bereitzustellen. Weitere Informationen finden Sie unter Lightsail-Container-Service-Images verwalten.