Probleme mit Spring Boot Docker und Bootstrap

Diskutiere Probleme mit Spring Boot Docker und Bootstrap im Allgemeine Java-Themen Bereich.
T

tummigummi1984

Hallo zusammen.
Ich habe eine kleine Spring Boot Anwendung geschrieben, die ich zum Testen gerne in einem Docker Container starten möchte.
Noch kurz zu meinem Setup : Ich habe auf meinem Raspberry Pi ein JFrog Artifactory laufen.

Die Spring Boot Anwenung soll einen einfache Template Seite (index.html) zurücliefern, die Bootstrap enthällt.
Die Anwenung is so konfiguriert, dass sie auf dem Port 2080 läuft. Innerhalb des Dockerfiles wird der Port auf 8080 (Host Port) gemappt. Damit klappt alles - > also die Seite wird mit bootstrap angezeit.
Ändere ich den Host Port jedoch so wird bootstrap nicht mehr verwendet und die Seite wir unformatiert angezeit.

Hier mal meine Konfguration :
Dockerfile :
Java:
FROM java:8-jdk-alpine

ARG HOST
ARG VERSION

RUN mkdir -p /importer/config
COPY docker/application.properties /importer/config

RUN wget -U admin:password ${HOST}/artifactory/libs-snapshot-local/importer/${VERSION}/maven-metadata.xml && \
    LATEST_VERSION=$(grep -m1 'value' maven-metadata.xml | sed 's/<value>//g' | sed 's/<\/value>//g' | sed 's/ //g') && \
    wget -U admin:password "${HOST}/artifactory/libs-snapshot-local/importer/${VERSION}/importer-${LATEST_VERSION}.jar" && \
    mv importer-*.jar /importer/importer.jar

EXPOSE 8080
CMD ["java", "-jar", "/importer/importer.jar", "--spring.config.location=/importer/config/"]
Hier mein Docker Compose File :
Java:
version: '3'
services:

  calendar_importer:
    image: "importer:1.0-SNAPSHOT"
    container_name: "importer"
    ports:
      - 8080:2080
So mit der Konfiguration funktioniert es. Ändere ich im Docker Compose File den Host Port von 8080 auf z.B 8081 bekomme ich keine bootstrap Elemente mehr zu sehen.

Kan mir jemand einen Tipp geben.

Vielen Dank für eure Unterstützung !!
 
L

LimDul

Bootstrap ist ja eine CSS Lib? Schau mal in dem HTML, was du angezeigt bekommst, wie die CSS referenziert wird. Evtl. steht da hart 8080 drin. (oder irgendwas anderes, was nicht funktioniert).
 
Flown

Flown

Warum ändert du den Hostport von 8080 (was exposed wird) auf 8081?
 
T

tummigummi1984

Danke für eure schnellen Antworten. Also ich verwende noch andere Container, daher kann ich nur einen auf dem Host Port 8080 lafuen lassen.

Das ist der Auszug aus dem HTML :

Code:
<head>
    <link rel="stylesheet" href="/webjars/bootstrap/4.4.1/css/bootstrap.min.css"/>
    <script src="webjars/jquery/4.4.1/bootstrap.min.js"></script>
    <script src="webjars/jquery/3.4.1/jquery.min.js"></script>
</head>
 
L

LimDul

Das sollte eigentlich klappen - schau mal, ob du, wenn du den Port auf 8081 änderst auf diese URLs drauf kommst. (Die index.html wird ja angezeigt, soweit ich dich verstehe)
 
T

tummigummi1984

Habe ich gerade ausprobiert. Leider das geliche Verhalten.
Also die Seite wird angezeigt (ich bekomme keinen Fehler) nur die Bootstrap Elemente werden nicht angezeigt.
 
T

tummigummi1984

Ich habe den Fehler gefunden :
Es lag an der Version ;
Ich der pom habe ich
<dependency>
<groupId>org.webjars</groupId>
<artifactId>bootstrap</artifactId>
<version>4.4.1-1</version>
</dependency>

während ich im template
<link rel="stylesheet" th:href="@{/webjars/bootstrap/4.4.1/css/bootstrap.min.css}"/>

verwendet habe

vielen dank für eureMithilfe
 
Thema: 

Probleme mit Spring Boot Docker und Bootstrap

Passende Stellenanzeigen aus deiner Region:
Anzeige

Neue Themen

Anzeige

Anzeige
Oben