Einführung in Docker für Entwickler

Docker ist jetzt fünf Jahre alt, verändert sich allerdings immer noch fortlaufend. Seit einem Jahr ist es möglich, Linux-Container ohne großen Aufwand und transparent unter Windows oder macOS auszuführen. Damit ist es möglich, allen Entwicklern mit einem Werkzeug alle Ressourcen für seine Arbeit lokal bereitzustellen. So können Konflikte auf zentralen Umgebungen oder die schlechte Netzwerkverbindung im Home-/Train-/*-Office umgangen werden.

In dem Tutorium werden wir Docker installieren, existierende Container ausführen, unsere eigenen bauen und zu guter Letzt ein System aus mehren Containern zusammensetzen. Neben dem Hands-on-Teil werden die notwendigen Grundlagen vermittelt und weitergehende Konzepte für den Betrieb von Containern kurz vorgestellt. Damit sollte die Basis gelegt sein, um für die Entwicklung notwendige Infrastruktur für jeden Entwickler schnell und unkompliziert bereitzustellen und eigene Gehversuche zu starten.

Agenda

ab 8:40: Registrierung und Begrüßungskaffee
9:40: Beginn

* Einführung in die Grundlagen von Docker
* Installation von Docker auf den Rechnern
* Starten von Containern "Hello World"

11.00 - 11.15: Kaffeepause

* Bauen von eigenen Containern

13.00 - 14.00: Mittagspause

* Einführung in das Docker-Netzwerk
* Orchestrierung von mehren Containern

16.00 - 16.30: Kaffeepause

* Orchestrierung von Containern mit docker-compose
* Ausblick
* Alternativen zum Dockerfile
* Umgang mit persistenten Daten
* Security
* Hosting

ca. 18.30 Uhr: Ende

Technische Anforderungen

Linux (Ubuntu, Centos, Fedora)/Windows 10 Pro oder Enterprise
* 64-Bit-CPU
* im BIOS/UEFI aktivierte Virtualisierung
* mind. 4 GB RAM
* mind. 10 GB freier Plattenplatz
* Administrationsrechte
* Netzwerkadapter (RJ-45)

Mac
* ab 2011
* OS X > 10.11
* mind. 4 GB RAM
* mind. 10 GB freier Plattenplatz
* Administrationsrechte
* Netzwerkadapter (RJ-45)

Vorkenntnisse

Grundlegende Linux-Kenntnisse

Lernziele

* Ein Überblick über Docker
* Lokale Installation
* Grundlagen für das Erstellen von eigenen Images
* Grundlagen zum Docker-Netzwerk und Images
* Ein Überblick über Möglichkeiten im Betrieb von Anwendungen in Containern

 

Agenda

ab 8.30 Uhr Registrierung und Begrüßungskaffee

9.30 Uhr Beginn

Intro

Machine Learning

  • Was ist Machine Learning?
  • Der typische ML Workflow
  • Was sind neuronale Netze?
  • Jupyter Lab mit Python
  • Eine Einführung in TensorFlow
  • Keras als High-Level API für TensorFlow

Praxisteil: Deep Learning Modelle mit Keras

  • Datengeneratoren
  • Datasets explorativ analysieren
  • Hold-Out vs. Cross Validation

11.00 - 11.15 Uhr: Kaffeepause

Praxisteil: Deep Learning Modelle mit Keras

  • Feed-Forward Netzarchitektur
  • Convolutional Neural Networks als Deep Learning Ansatz
  • Evaluation und Visualisierung des Modells

12.30 - 13.30 Uhr: Mittagspause

Pipelines mit Luigi

  • Anforderungen an produktive Modelle
  • Übersicht über Luigi und dessen Module
  • Bau eines Beispiel-Workflows

Praxisteil: Den Keras-Workflow mit Luigi implementieren

  • Anforderungen an produktive Modelle
  • Übersicht über Luigi und dessen Module
  • Bau eines Beispiel-Workflows

15.30 - 15.45 Uhr: Kaffeepause

Praxisteil: TensorFlow-Serving

  • Übersicht über TensorFlow-Serving
  • Ladestrategien konfigurieren
  • Deployment des Modells

ca. 17.00 Uhr: Ende

 

Referent

 

Stefan Hildebrandt Stefan Hildebrandt ist als Softwareentwickler und Berater seit zehn Jahren in größeren Projekten tätig. Neben der Entwicklung der Software kümmert er sich auch um Test- und Deployment-Automatisierung. Sein Interesse gilt vermehrt der ganzheitlichen Betrachtung des Softwareentwicklungsprozesses und der Potenziale, die außerhalb der eigentlichen Entwicklung schlummern.

Gold-Sponsor

Deloitte.

Silber-Sponsoren

codecentric
ISO-Gruppe

Herbstcampus-Newsletter

Sie möchten über den Herbstcampus
auf dem Laufenden gehalten werden?

 

Anmelden