Modul 169 - Git / Docker Images

Git / Docker Images

Modul 169

BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

Inhalt

  • Repetition

  • Modul 169 VM

  • Git

    • Grundlagen
    • Installieren
    • Konfigurieren
    • SSH-Key
  • Docker Image
    Schichtenarchitektur / Eigenschaften / Bilden eines Image

  • Dockerfile
    Befehle / Caching / Multistage Build

  • Übungen
    zu Docker Image und Dockerfile

BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

Regeln 👮‍♀️

BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

§1 Fokus und Geräte

Die digitalen Geräte: 📱, 💻, etc.

  • immer nur auf Aufforderung der Lehrkraft

  • immer nur zur Bearbeitung der gestellten Aufgaben

Private Aktivitäten sind untersagt: unter anderem Social Media, Spiele, Videos, private E-Mails/Chats, Surfen, Shoppen, etc.

BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

§2 Ruhe und Umgangsformen

Die Konzentration der Mitschüler muss gewährleistet sein.

  • Lärm ist zu vermeiden
    z.B. laute Gespräche, Geräusche, Rufen.

  • Freundlicher, höflicher und respektvoller Umgangston

BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

Was versteht Ihr unter einem Container?

BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

Virtuelle Maschine / Container

inline

BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

💡 Container teilen *physikalische Ressourcen!

* unter Linux 🤓

BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

Modul 169 VM

Live Demo der Umgebung durch Lehrperson

BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

📖 Auftrag

Lesen Sie das Kapitel "Git"

  • 🧬 Einzelarbeit
  • 🕐 10 Min
BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

GIT Demo

GitHub Übersicht

Commits

Änderungen sehen

BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

📝 Auftrag

Machen Sie die Übung "Git: Start".

  • 🧬 Einzelarbeit
  • 🕐 Bis zur grossen Pause
BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

🛌 20 Min Pause

BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

📝 Auftrag

Lesen und Machen Sie die Übung "Git: Übungs-Repository".

  • 🧬 Einzelarbeit
  • 🕐 30 min
BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

Wie werden Docker Images erstellt?

BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

Docker: vom File zum Container

docker-file-image-container

BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

Docker: Hauptmerkmale

Dockerfile

FROM ubuntu

COPY . /app

RUN pip install -r requirements.txt

CMD ["python", "app.py"]

Vom File zum Image

docker build . -t webapp:1.12.5

Image

  • Schichtenarchitektur:
    • FROM, RUN, COPY, ADD, WORKDIR → verändern Dateisystem
  • Portabilität:
    • on premise / cloud (kubernetes)
  • Versionierung:
    • tag: z.B. webapp:1.12.5
  • Verteilung: Container Registry
BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

📖 Auftrag

Lesen Sie auf der Modulwebseite Woche 2

  • 🧬 Einzelarbeit
  • 🕐 10 Min
BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

Dockerfile Demo

BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

📝 Auftrag

Machen Sie die Übung 1 unter Einfaches Dockerfile.

  • Öffnen Sie den Ordner der Übung01
  • Kopieren Sie die Lösung
  • Passen Sie den Author an
  • Bilden Sie das Docker Image
  • Listen Sie das Image
  • Erstellen Sie einen Container

Git Bash Befehle

cd ./02-dockerimage/uebung01

cp ./solution/Dockerfile Dockerfile

code Dockerfile # öffnet VS-Code

docker build -t uebung01 .

docker images

docker run uebung01

docker ps
BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

Warum jetzt Git für Docker?

  • Git eignet sich für die Versionierung von Textfiles

  • Das Dockerfile ist ein Textfile.

  • Docker Images sind auch getagget 🤝.

  • Es ist klar, welchen Code welches Image gebaut hat.

  • Automatisierung braucht immer beschreibenden Code.

BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

📖 Auftrag

  • 🧬 Einzelarbeit
  • 🕐 10 Min
BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

🔨 Auftrag

Lösen Sie die weiteren Aufgaben von "Einfaches Dockerfile" und mindestens eine von "Multistage Dockerfile".

  • 🧬 Einzelarbeit
  • 🕐 60 Min
BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen
Modul 169 - Git / Docker Images

Hausaufgaben

  • Üben, üben, üben.

  • Es gibt genug Übungen.

  • Sie können sie auch wiederholen! Das schadet nicht ;)

BBZBL / Lukas Hodel / Michael Salm / Services mit Containern bereitstellen

- **Docker Hub**

- eigene **Apps containerisieren**