Zum Hauptinhalt springen

Übung 1 - Minimale Basis

Minimales Basisimage​

Ziel​

In dieser Übung geht des darum ein Dockerfile, welches ein ubuntu:24.04 als Basis verwendet und darin Pakete installiert, so umzubauen, dass:

  1. Ein spezifisches Image verwendet wird.
  2. Keine zusätzlichen Pakete mehr installiert werden müssen.

Schritte​

  1. Erstellt ein Dockerfile mit folgendem Inhalt:
    • Achtet darauf, das LABEL neu zu setzen.
FROM ubuntu:24.04
LABEL Author="Ihr Name!"

RUN apt-get update && apt-get -y upgrade && \
apt-get install -y nginx

EXPOSE 80

CMD ["nginx", "-g", "daemon off;"]
  1. Baut das Image mit dem Tag security:minimal-image.

  2. Startet es auf Port 8080 und öffnet http://localhost:8080.

    • Achtung: Port-Mapping.
  3. Findet heraus, welches Paket genau installiert wird.

  4. Sucht dafür ein Baseimage auf https://hub.docker.com/.

  5. Passt das Dockerfile mit dem neuen Baseimage so an, dass der RUN und CMD Befehl, nicht mehr nötig ist, beim Starten jedoch noch das Gleiche passiert.

  6. Baut und startet das neue Image.

  7. Startet es auf Port 8080 und öffnet http://localhost:8080.

    • Achtung: Port-Mapping.
  8. Bräuchte man dafür wirklich noch ein eigenes Dockerfile?

Details

Lösung

  • Nein, man könnte direkt das nginx Basisimage starten docker run -p 8080:80 nginx
  • 💡 Eigene Images machen nur dann Sinn, wenn wirklich eigener Code oder Konfiguration nötig ist.

Quelle