Docker hat sich zur beliebtesten Containerisierungsplattform entwickelt. Es bietet eine schnelle, zuverlässige und portable Möglichkeit zum Erstellen, Bereitstellen und Ausführen von Anwendungen. Tomcat ist ein Open-Source-Servlet-Container der Apache Foundation und der wichtigste Teil von Java EE-Anwendungen. Wie man Tomcat unter Docker startet, ist eine Frage, die Java-Entwicklern am meisten beschäftigt. In diesem Artikel erfahren Sie, wie Sie Tomcat in einem Docker-Container starten.
Schritt 1: Erstellen Sie eine Docker-Datei
In Docker verwenden wir Dockerfile-Dateien, um den Inhalt und den Betriebsmodus des Docker-Images zu definieren. Das Folgende ist der einfachste Inhalt der Dockerfile-Datei:
FROM tomcat:latest
Dieser Befehl lädt das Image herunter, das hauptsächlich auf dem Tomcat-Container aus dem Docker-Image-Warehouse basiert. Docker speichert das Image für die zukünftige Verwendung auf Ihrem lokalen Computer zwischen.
Schritt 2: Erstellen Sie das Docker-Image
Nach dem Erstellen der Docker-Datei müssen wir den folgenden Befehl im aktuellen Verzeichnis verwenden, um das Docker-Image zu erstellen:
docker build -t my-tomcat .
Dieser Befehl verwendet das Flag -t, um den Namen des Builds anzugeben Docker-Image (hier ist my-tomcat), und am Ende des Dateipfads wird ein Punkt hinzugefügt, um anzuzeigen, dass das aktuelle Verzeichnis der Speicherort der Dockerfile-Datei ist. Das Erstellen des Docker-Images dauert je nach Netzwerkgeschwindigkeit und Größe Ihrer Tomcat-Version einige Zeit.
Schritt 3: Starten Sie den Tomcat-Container
Nach Abschluss der Docker-Image-Erstellung können wir den folgenden Befehl verwenden, um den Tomcat-Container zu starten:
docker run -p 8080:8080 my-tomcat
Dieser Befehl verwendet das Flag -p für die lokale Portnummer 8080 und die Portnummer im Tomcat-Container Erstellen Sie eine Zuordnung zwischen 8080. Wir können http://localhost:8080 in den Browser eingeben, um auf den Tomcat-Server zuzugreifen.
Schritt 4: Passen Sie das Tomcat-Verwaltungskonsolenkonto und das Passwort an
Standardmäßig ist das Standardadministratorkonto des Tomcat-Containers Tomcat. Mit dem folgenden Befehl können Sie Ihre Admin-Konsole mit einem benutzerdefinierten Konto und Passwort schützen:
docker run -p 8080:8080 -e TOMCAT_USERNAME=<your_username> -e TOMCAT_PASSWORD=<your_password> my-tomcat
Dieser Befehl verwendet das Flag -e, um Umgebungsvariablen anzugeben. Die Variablen TOMCAT_USERNAME und TOMCAT_PASSWORD werden zum Definieren benutzerdefinierter Kontonamen und Passwörter verwendet. Der Kontoname und das Passwort werden zur Authentifizierung innerhalb des Docker-Containers verwendet.
Schritt 5: Stellen Sie die Anwendung im Tomcat-Container bereit
Jetzt gehen wir davon aus, dass Ihr Anwendungsname my-app.war ist und platzieren die Datei im lokalen Ordner /path/to/myapp. Mit dem folgenden Befehl können wir die Anwendung im Tomcat-Container bereitstellen:
docker run -p 8080:8080 -v /path/to/myapp:/usr/local/tomcat/webapps my-tomcat
Dieser Befehl verwendet das Flag -v, um ein lokales Dateivolume zu definieren, wobei /path/to/myapp der lokale Pfad ist, in dem sich Ihre Anwendung befindet, /usr /local/tomcat/webapps ist der Pfad, in dem Ihre Tomcat-Container-Webanwendungen gespeichert werden.
Jetzt haben wir Tomcat erfolgreich im Docker-Container gestartet und die Anwendung im Tomcat-Container bereitgestellt. Wenn Sie den Tomcat-Container stoppen möchten, verwenden Sie die Tastenkombination Strg + C, um das Terminalfenster zu schließen.
Fazit
Docker-Images bieten Java-Entwicklern eine flexiblere, portablere und effizientere Entwicklungs- und Bereitstellungsumgebung. Das Ausführen von Java-Anwendungen in einem Tomcat-Container kann uns dabei helfen, schnell und bequem Java-Anwendungen zu entwickeln und zu testen. In diesem Artikel werden einige einfache Schritte vorgestellt, die Java-Entwicklern das Entwickeln und Testen unter Docker-Containern erleichtern können.
Das obige ist der detaillierte Inhalt vonSo starten Sie Tomcat unter Docker. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!