diff --git a/docker-compose.yml b/docker-compose.yml index 22cf9b3..02fdf6e 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -29,7 +29,7 @@ services: context: /app/frontend restart: unless-stopped ports: - - 5173:5173 + - 5173:3000 grafana-inp21b: image: grafana/grafana:latest diff --git a/frontend/Dockerfile b/frontend/Dockerfile index 6a19e01..a96a010 100644 --- a/frontend/Dockerfile +++ b/frontend/Dockerfile @@ -1,16 +1,35 @@ -FROM node:22-alpine +# Stage 1: Build +FROM node:22-alpine as build -RUN mkdir app +# Setze den Arbeitsordner WORKDIR /app/ +# Installiere git, um das Repository klonen zu können RUN apk update && apk add git -RUN git clone https://github.com/bjgedeon/Frontend-M241-245.git -WORKDIR /app/Frontend-M241-245 +# Klone das GitHub-Repository +RUN git clone https://github.com/bjgedeon/Frontend-M241-245.git . +# Installiere Abhängigkeiten RUN npm install -EXPOSE 5173 +# Erstelle die Produktionsversion +RUN npm run build -CMD [ "npm", "run", "dev", "--", "--host", "0.0.0.0" ] +# Stage 2: Serve +FROM node:22-alpine as serve +# Installiere Serve um statische Dateien zu bedienen +RUN npm install -g serve + +# Setze den Arbeitsordner +WORKDIR /app/ + +# Kopiere die gebauten Dateien vom vorherigen Build +COPY --from=build /app/dist ./dist + +# Exponiere den Port +EXPOSE 3000 + +# Kommando zum Ausführen des Servers +CMD ["serve", "-s", "dist", "-l", "3000"] \ No newline at end of file