2017-02-15 2 views
0

Ich habe eine Webanwendung auf Windows von Eclipse, mit Xampp für Apache und MySQL. Es verwendet jdk v 1.8.Upgrade der jdk-Version von Tomcat docker Container auf 1.8

Nun möchte ich in einem Docker Tomcat-Container bereitstellen. Ich habe einen Container von Tomcat offiziellen Bild erstellt ... aber ich habe gesehen, dass seine JDK-Version ist 1.7 ... so gibt es einige Fehler, wenn ich versuche, Web-App unter Container (von Tomcat Logs ich sehe unsupported major.minor version 52.0 (unable to load class)

Also .. wie kann ich mein Problem lösen?

+0

Es gibt offizielle Bilder mit JRE 8. https://hub.docker.com/_/tomcat/ listet '-jre8' Versionen für 8.0 und 8.5 auf. Welchen benutzen Sie? – nitind

+0

Ich erstelle einen Andock-Container, der nur das offizielle Tomcat-Image auswählt (d. H. Docker-run -p PORT: PORT - Name mytomcat tomcat). Jetzt benutze ich tomcat: 8.0, aber ich habe dieses Problem mit diesem Container: http://StackOverflow.com/questions/42270692/connect-a-web-app-on-tomcat-container-to-mysql-container -via-hibernate – pier92

Antwort

1

Es gibt fast alle Versionen von tomcat Version available mit openjre 8. wenn Sie jedoch JDK aus irgendeinem Grund verwenden möchten oder Sie eine Version von tomcat verwenden, die funktioniert nicht haben jre 8 runtime ODER du willst oracle JDK verwenden dann sind 2 möglichkeiten jdk 8

  • Sie erstellen Ihre ow n docker file und erweitern Sie das tomcat docker image.
  • Sie verwenden die Docker-Commit-Funktionalität. Anstatt docker wie docker run -it --rm -p 8888:8080 tomcat:8.0 laufen zu lassen, wie docker run -it --rm -p 8888:8080 tomcat:8.0 bash. Dies zeigt die Bash-Shell an. Sie können dann jdk8 mit dieser link installieren. Do docker commit und Sie könnten dieses Bild überall verwenden.
  • Option 1 ist immer vorzuziehen, da Sie das Bild besser steuern können

    +0

    Danke, jetzt benutze ich tomcat: 8.0, aber ich habe dieses Problem mit diesem Container: http://StackOverflow.com/questions/42270692/connect-a-web-app-on-tomcat- container-zu-mysql-container-via-hibernate – pier92

    +0

    könnten Sie diese Antwort für die gestellte Frage akzeptieren? Ich werde die andere Frage – GauravJ

    +0

    @GauravJ für einige Bibliotheken wie Jasper kommentieren, openjdk ist keine Option und die Verwendung von jdk ist die einzige Alternative. Ich war kürzlich auch mit dem gleichen Problem konfrontiert und es war die einzige Möglichkeit für meine Anwendung, sich so zu verhalten, wie ich es erwartet hatte, wenn ich jdk auf meinem Docker-Container hatte – user3153278

    Verwandte Themen