35 lines
857 B
Docker
35 lines
857 B
Docker
# --- 1. Frontend bauen ---
|
|
FROM node:20 AS frontend-build
|
|
WORKDIR /app
|
|
COPY frontend ./frontend
|
|
WORKDIR /app/frontend
|
|
RUN npm install && npm run build
|
|
|
|
# --- 2. Backend-Stage ---
|
|
FROM python:3.13
|
|
WORKDIR /app
|
|
|
|
# Backend-Dateien korrekt kopieren
|
|
COPY backend/app.py ./backend/app.py
|
|
COPY backend/util ./backend/util
|
|
COPY backend/auth ./backend/auth
|
|
COPY backend/tools ./backend/tools
|
|
COPY backend/templates ./backend/templates
|
|
COPY backend/config ./config
|
|
COPY backend/requirements.txt ./requirements.txt
|
|
|
|
COPY backend/setup_routes.py ./backend/setup_routes.py
|
|
|
|
|
|
# Frontend aus Build-Stage übernehmen
|
|
COPY --from=frontend-build /app/frontend/dist ./frontend/dist
|
|
|
|
# Python-Abhängigkeiten installieren
|
|
RUN pip install --no-cache-dir -r requirements.txt
|
|
|
|
# Flask starten
|
|
WORKDIR /app/backend
|
|
ENV PYTHONPATH=/app/backend
|
|
EXPOSE 5000
|
|
CMD ["python", "app.py"]
|