Files
AI-Vortrag/Dockerfile
Erik Thiele 64f057a7c0 Add Docker deployment, EU AI Act slide, and chapter name in HUD
Serves the deck via a small nginx container (docker compose up -d).
The Dockerfile copies files individually rather than COPY . . so the
speaker notes, design docs and local backups stay out of the image.

Deck grows to 44 slides: adds a Vibe Coding slide covering AI-assisted
programming, an EU AI Act slide with the four risk tiers, and expands
the outlook from three to six trends. The HUD now also shows the
current chapter name, resolved from the slide manifest.
2026-07-31 10:36:34 +02:00

24 lines
1.0 KiB
Docker

# Statisches Deck via nginx ausliefern — kein Build-Schritt, kein Node.
FROM nginx:alpine
# Eigene Server-Config (macht ki-verstehen.html zur Startseite, schaltet gzip an)
COPY nginx.conf /etc/nginx/conf.d/default.conf
# nginx-Willkommensseite entfernen, sonst liegt sie unter /index.html im Webroot
RUN rm -f /usr/share/nginx/html/index.html
# WICHTIG: Dateien einzeln kopieren, NICHT `COPY . .` —
# Sprecher.md enthält die Sprechernotizen und darf nicht im Web landen.
# Dasselbe gilt für DESIGN.md/PATTERNS.md und die lokalen Backup-Dateien.
COPY ki-verstehen.html /usr/share/nginx/html/
COPY config.html /usr/share/nginx/html/
COPY slides-manifest.js /usr/share/nginx/html/
COPY font-vorschau.html /usr/share/nginx/html/
EXPOSE 80
# Bewusst 127.0.0.1 statt localhost: nginx lauscht hier nur auf IPv4,
# "localhost" löst im Container aber zuerst auf ::1 auf -> Connection refused.
HEALTHCHECK --interval=30s --timeout=3s --start-period=5s --retries=3 \
CMD wget -qO- http://127.0.0.1/ >/dev/null || exit 1