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.
Vorkonfigurierte Docker-Container (Amazon Linux AMI)
Anmerkung
Am 18. Juli 2022 stellte Elastic Beanstalk den Status aller Plattformzweige auf Basis von Amazon-Linux-AMI (AL1) auf außer Betrieb genommen. Weitere Informationen zur Migration zu einem aktuellen und vollständig unterstützten Plattformzweig für Amazon Linux 2023 finden Sie unter Migrieren der Elastic-Beanstalk-Linux-Anwendung zu Amazon Linux 2023 oder Amazon Linux 2.
Die vorkonfigurierte Docker-GlassFish-Plattformverzweigung, die auf dem Amazon-Linux-AMI (AL1) ausgeführt wird, wird nicht mehr unterstützt. Stellen Sie zum Migrieren Ihrer GlassFish-Anwendung zu einer Amazon-Linux-2023-Plattform GlassFish und den Anwendungscode in einem Amazon-Linux-2023-Docker-Image bereit. Weitere Informationen finden Sie im Thema Bereitstellen einer GlassFish-Anwendung auf der Docker-Plattform: Migrationspfad zu Amazon Linux 2023.
Dieser Abschnitt zeigt die lokale Entwicklung einer Beispielanwendung und die anschließende Bereitstellung in Elastic Beanstalk mit einem vorkonfigurierten Docker-Container.
Einrichten der lokalen Entwicklungsumgebung
Für diese Anleitung verwenden wir eine GlassFish-Beispielanwendung.
Einrichten Ihrer Umgebung
-
Erstellen Sie einen neuen Ordner für die Beispielanwendung.
~$
mkdir eb-preconf-example
~$cd eb-preconf-example
-
Laden Sie den Beispiel-Anwendungscode in den neuen Ordner herunter.
~$
wget https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/samples/docker-glassfish-v1.zip
~$unzip docker-glassfish-v1.zip
~$rm docker-glassfish-v1.zip
Lokales Entwickeln und Testen
Entwickeln einer Beispiel-GlassFish-Anwendung
-
Fügen Sie eine
Dockerfile
-Datei zum Stammordner der Anwendung hinzu. Geben Sie in der Datei an, mit welchem AWS Elastic Beanstalk Docker-Basis-Image von der lokale vorkonfigurierte Docker-Container ausgeführt werden soll. Sie stellen Ihre Anwendung später in einer vorkonfigurierten Plattformversion von Elastic Beanstalk-Docker-Glassfish bereit. Wählen Sie das Docker-Basis-Image, das diese Plattformversion verwendet. Informationen zum Bestimmen des aktuellen Docker-Image der Plattformversion finden Sie im Abschnitt Vorkonfigurierter Docker der Seite Von AWS Elastic Beanstalk unterstützte Plattformen im AWS Elastic Beanstalk-Plattformhandbuch.Beispiel ~/Eb-preconf-example/Dockerfile
# For Glassfish 5.0 Java 8 FROM amazon/aws-eb-glassfish:5.0-al-onbuild-2.11.1
Weitere Informationen zur Verwendung von
Dockerfile
finden Sie unter Docker-Konfiguration. -
Erstellen Sie das Docker-Image.
~/eb-preconf-example$
docker build -t my-app-image .
-
Führen Sie den Docker-Container aus dem Image aus.
Anmerkung
Sie müssen das Flag
-p
einbinden, um Port 8080 auf dem Container dem Localhost-Port 3000 zuzuordnen. In Elastic Beanstalk stellen die Docker-Container die Anwendung stets über Port 8080 auf dem Container bereit. Mit den Flags-it
wird das Image als interaktiver Prozess ausgeführt. Mithilfe des Flags--rm
wird das Container-Dateisystem nach Beendigung des Containers bereinigt. Optional können Sie das Flag-d
einbeziehen und das Image als Daemon ausführen.$
docker run -it --rm -p 3000:8080 my-app-image
-
Geben Sie die folgende URL in den Webbrowser ein, um die Beispielanwendung anzuzeigen.
http://localhost:3000
Bereitstellen in Elastic Beanstalk
Nachdem Sie die Anwendung getestet haben, können Sie diese nun in Elastic Beanstalk bereitstellen.
So stellen Sie Ihre Anwendung in Elastic Beanstalk bereit
-
Ändern Sie im Stammordner der Anwendung den Dateinamen von
Dockerfile
inDockerfile.local
. Dieser Schritt ist erforderlich, damit Elastic Beanstalk dieDockerfile
-Datei mit den richtigen Anweisungen für Elastic Beanstalk verwendet, um ein angepasstes Docker-Image auf den einzelnen Amazon EC2-Instances in Ihrer Elastic Beanstalk-Umgebung zu erstellen.Anmerkung
Dieser Schritt ist nicht nötig, wenn die
Dockerfile
-Datei Anweisungen enthält, mit denen das Docker-Basis-Image der Plattformversion geändert wird. Sie brauchen überhaupt keineDockerfile
-Datei, sofern dieDockerfile
-Datei nur eineFROM
-Zeile enthält und darin das Basis-Image angibt, mit dem der Container erstellt werden soll. In diesem Fall ist dieDockerfile
-Datei überflüssig. -
Erstellen Sie das Quell-Bundle der Anwendung.
~/eb-preconf-example$
zip myapp.zip -r *
-
Öffnen Sie die Elastic Beanstalk-Konsole mit diesem vorkonfigurierten Link: console.aws.amazon.com/elasticbeanstalk/home#/newApplication?applicationName=tutorials&environmentType=LoadBalanced
-
Wählen Sie für Platform (Plattform) unter Preconfigured – Docker (Vorkonfiguriert – Docker) die Option Glassfish aus.
-
Unter Application code wählen Sie Upload your code und dann Upload aus.
-
Wählen Sie Local file (Lokale Datei), wählen Sie Browse (Durchsuchen) und öffnen Sie dann das Quell-Bundle, das Sie erstellt haben.
-
Klicken Sie auf Hochladen.
-
Klicken Sie auf Review and launch (Überprüfen und starten).
-
Prüfen Sie die verfügbaren Einstellungen und wählen Sie Create app (Anwendung erstellen) aus.
-
Wenn die Umgebung erstellt wurde, können Sie die bereitgestellte Anwendung anzeigen. Wählen Sie die Umgebungs-URL, die oben im Konsolendashboard angezeigt wird.