Ich habe eine Spring-Boot-basierte Java-Anwendung, die gut von der Befehlszeile (Embedded Tomcat Standalone) läuft.Spring Boot App läuft gut Standalone, Fehler in Docker
Problem
Wenn ich die app in Docker laufen, es läuft nicht richtig. Die Konsole zeigt an, dass die Anwendung problemlos gestartet werden kann. jedoch zeigt der Browser die folgende Fehlerseite:
Whitelabel Fehler Seite
Diese Anwendung hat keine explizite Zuordnung für/Fehler, so dass Sie dies als Ausweich sehen.
[Ich verstehe die Nachricht sagt keine Zuordnung für '/ Fehler' URL. Allerdings möchte ich die Ursache]
Zusätzliche Informationen/Context
- Frühling Boot 1.4.2
- Docker Plugin
- Ausgang ist 'Krieg' Datei kennen, die läuft auch eigenständige
- Ich führe Docker Image im "Host" Netzwerkmodus (--net = Host) aus, so dass es auf die Datenbank zugreifen kann (mysql auf meinem localhost)
build.gradle Ziel
task buildDocker(type: Docker, dependsOn: build) {
push = false
applicationName = jar.baseName
dockerfile = file('src/main/docker/Dockerfile')
doFirst {
copy {
from war
into stageDir
}
}
}
dockerfile
FROM frolvlad/alpine-oraclejdk8:slim
VOLUME /tmp
ADD floss.war app.jar
RUN sh -c 'touch /app.jar'
ENV JAVA_OPTS=""
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ]
Befehl auszuführen Docker
dockerImg=1248c47d9cfa
docker run \
-it \
--net=host \
-e SPRING_APPLICATION_JSON="$SPRING_APPLICATION_JSON" \
$dockerImg
Ich bin neu in Andockfenster und Anregungen schätzen würde.
danke im voraus!
Kannst du '' 'docker ps''', dann' '' docker logs --tail 100 -f $ {YOUR_CONTAINER_ID} '' 'ausführen, um zu sehen, ob beim Auftreten des Fehlers StackTrace in stdout/stderr angezeigt wird? – EwyynTomato