Compare commits
10 Commits
48dcbf3913
...
6f31eee9b0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6f31eee9b0 | ||
|
|
fe5ee6a0d3 | ||
|
|
9ec9371287 | ||
|
|
7479479e0c | ||
|
|
a922c2ddbd | ||
|
|
ece3d4239f | ||
|
|
0867043330 | ||
|
|
a54cb5e70d | ||
|
|
4166efeea0 | ||
|
|
f55394efe8 |
@@ -5,7 +5,7 @@ FROM eclipse-temurin:17-jdk-alpine
|
|||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
# 3. Kopiere das JAR (Pfad siehe unten)
|
# 3. Kopiere das JAR (Pfad siehe unten)
|
||||||
COPY build/libs/mytimetracker.jar app.jar
|
COPY build/libs/MyTimeTracker-0.0.1-SNAPSHOT.jar app.jar
|
||||||
|
|
||||||
# 4. Port freigeben
|
# 4. Port freigeben
|
||||||
EXPOSE 8080
|
EXPOSE 8080
|
||||||
|
|||||||
31
compose.yml
31
compose.yml
@@ -3,31 +3,44 @@ version: "3.9"
|
|||||||
services:
|
services:
|
||||||
db:
|
db:
|
||||||
image: mysql:8
|
image: mysql:8
|
||||||
restart: always
|
|
||||||
container_name: mytimetracker-db
|
container_name: mytimetracker-db
|
||||||
|
restart: always
|
||||||
environment:
|
environment:
|
||||||
MYSQL_DATABASE: mytimetracker
|
MYSQL_DATABASE: mytimetracker
|
||||||
MYSQL_ROOT_PASSWORD: root
|
MYSQL_ROOT_PASSWORD: root
|
||||||
MYSQL_USER: appuser
|
MYSQL_USER: appuser
|
||||||
MYSQL_PASSWORD: apppass
|
MYSQL_PASSWORD: apppass
|
||||||
ports:
|
|
||||||
- "3306:3306"
|
|
||||||
volumes:
|
volumes:
|
||||||
- db_data:/var/lib/mysql
|
- db_data:/var/lib/mysql
|
||||||
|
expose:
|
||||||
|
- "3306"
|
||||||
|
networks:
|
||||||
|
- traefik
|
||||||
|
|
||||||
app:
|
app:
|
||||||
build: .
|
build: .
|
||||||
|
image: mytimetracker-app
|
||||||
container_name: mytimetracker-app
|
container_name: mytimetracker-app
|
||||||
depends_on:
|
depends_on:
|
||||||
- db
|
- db
|
||||||
ports:
|
ports:
|
||||||
- "8080:8080"
|
- "8400:8080" # 8400 auf dem Host, 8080 im Container
|
||||||
environment:
|
environment:
|
||||||
SPRING_DATASOURCE_URL: jdbc:mysql://db:3306/mytimetracker?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC
|
SPRING_PROFILES_ACTIVE: docker
|
||||||
SPRING_DATASOURCE_USERNAME: appuser
|
labels:
|
||||||
SPRING_DATASOURCE_PASSWORD: apppass
|
- "traefik.enable=true"
|
||||||
SPRING_JPA_HIBERNATE_DDL_AUTO: update
|
- "traefik.http.routers.mytimetracker.rule=Host(`timetracker.nilzbu.de`)"
|
||||||
|
- "traefik.http.routers.mytimetracker.entrypoints=websecure"
|
||||||
|
- "traefik.http.routers.mytimetracker.tls=true"
|
||||||
|
- "traefik.http.routers.mytimetracker.tls.certresolver=letsEncrypt"
|
||||||
|
- "traefik.http.services.mytimetracker.loadbalancer.server.port=8080"
|
||||||
|
networks:
|
||||||
|
- traefik
|
||||||
restart: always
|
restart: always
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
db_data:
|
db_data:
|
||||||
|
|
||||||
|
networks:
|
||||||
|
traefik:
|
||||||
|
external: true
|
||||||
@@ -27,7 +27,7 @@ public class MainLayout extends AppLayout {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void createHeader() {
|
private void createHeader() {
|
||||||
H1 logo = new H1("My Time Tracker");
|
H1 logo = new H1("Time Tracker");
|
||||||
logo.getStyle()
|
logo.getStyle()
|
||||||
.set("font-size", "var(--lumo-font-size-l)")
|
.set("font-size", "var(--lumo-font-size-l)")
|
||||||
.set("margin", "0");
|
.set("margin", "0");
|
||||||
|
|||||||
@@ -16,6 +16,6 @@ public class LoginView extends VerticalLayout {
|
|||||||
LoginForm login = new LoginForm();
|
LoginForm login = new LoginForm();
|
||||||
login.setAction("login"); // wichtig für Spring Security
|
login.setAction("login"); // wichtig für Spring Security
|
||||||
|
|
||||||
add(new H2("My Time Tracker – Anmeldung"), login);
|
add(new H2("Time Tracker Login"), login);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user