Seminarinformationen

Seminar - Ziel

In diesem 2-tägigen Seminar „Einführung in Continuous Delivery“ setzen Sie sich mit der Motivation und den Konzepten von Continuous Delivery sowie dessen Verbindung zum DevOps-Paradigma auseinander. Sie erhalten einen Überblick über Continuous Integration, Continuous Delivery und Continuous Deployment und lernen, wie eine passende Softwarearchitektur für die Automatisierung in 12-Factor-Apps gestaltet wird. Grundlegende Technologien und Frameworks wie Docker, Kubernetes und CI-Anbieter werden vorgestellt und praktisch in einer Deployment-Pipeline angewendet. Zudem behandelt das Seminar die Umsetzung von Infrastructure as Code (IaC), das Monitoring von Cloud-Anwendungen sowie das Testen, Ausrollen und Zurückrollen von Anwendungen.

Teilnehmer - Zielgruppe

  • Software-Entwickler
  • Software-Architekten

Kurs - Voraussetzungen

Für eine optimale Teilnahme am Kurs empfehlen wir folgende Vorkenntnisse:

  • Kenntnisse in Programmierung mit Java und Python wünschenswert

Seminardauer

  • 2 Tage
  • 09:00 Uhr bis 17:00 Uhr

Schulungsunterlagen

  • nach Absprache

Seminar-Inhalt / Agenda

Einführung

  • Continuous Delivery Motivation
  • DevOps Paradigma und Einbettung von Continuous Delivery
  • Continuous Integration, Continuous Delivery, Continuous Deployment
  • Geeignete Software Architektur für Automatisierung (12-Factor-Apps)

Grundlagen - Technologien und Frameworks

  • Docker
  • (Kubernetes)
  • CI Anbieter (Gitlab, Circle, Drone, Travis, etc.)
  • Einfache (Yaml) Konfiguration
  • Stages, Jobs
  • Runner

Hands-On (Praxisbeispiel)

  • Deployment Pipeline
  • Build
  • Test (Unit, Integration)
  • Packaging der Applikation in ein Docker image und hochladen in die Amazon Elastic Container Registry (ECR)

Infrastructure

  • Infrastructure as Code (IaC)

Hands-On (Praxisbeispiel)

  • Vorbereiten der Infrastruktur (Buckets, SQL DB, Kubernetes Cluster, etc.)
  • Staging Deployment
  • Tests mit Selenium in der Pipeline
  • Deploy Production
  • Monitoring von Cloud-Anwendungen
  • Update, Rollout, Rollback von Anwendungen

Hands-On (Praxisbeispiel)

  • Rollout/Rollback/Teardown
  • Monitoring

Abgrenzung zu anderen Themengebieten

Automatisiertes Testen von Applikationen ist ein Enabler für Continuous Delivery, der in dieser Schulung nicht fehlen darf. Es werden verschieden Arten von Tests (Unit, Integration, Acceptance, etc) automatisiert innerhalb der Deployment Pipeline durchlaufen. Der Fokus liegt klar auf der Automatisierung der Tests. Allgemeine Methoden des Testens und der Testautomatisierung werden als bekannt vorausgesetzt.

Weitere Schulungen zu Thema Microsoft .NET

C# Grundkurs (ohne Vorkenntnisse)

- u.a. in Nürnberg, Berlin, Stuttgart, München, Köln

In diesem 5-tägigen Seminar "C# Grundkurs (ohne Vorkenntnisse)" erhalten die Teilnehmenden eine detaillierte Einführung in die Programmiersprache C# und erwerben fundiertes Wissen sowie praktische Fähigkeiten, um effektiv in C# zu programmieren. Ziel des Kurses ist ...

ADO.NET - Datenbankprogrammierung

- u.a. in Nürnberg, Berlin, Stuttgart, München, Köln

In dieser 3-tägigen Schulung "ADO.NET - Datenbankprogrammierung" lernen Sie die Grundlagen und Praxisanwendung von ADO.NET. Sie werden die Architektur und Funktionalitäten von ADO.NET kennenlernen, einschließlich der wichtigsten Namespaces und Klassen. Sie werden ...

Programmieren von Web-Anwendungen mit ASP.NET und JavaScript/jQuery

- u.a. in Hamburg, München, Dresden, Virtual Classroom, Nordhausen

In dieser 2-tägigen Schulung „Programmieren von Web-Anwendungen mit ASP.NET und JavaScript/jQuery“ erlernen Sie, wie Sie Webapplikationen mit ASP.NET erstellen und dabei JavaScript sowie jQuery effektiv nutzen können. Sie erhalten eine umfassende Einführung in die ...

WPF Kompaktkurs

- u.a. in Köln, München, Zürich, Mannheim, Darmstadt

In diesem 3-tägigen Seminar "WPF Kompaktkurs" lernen Sie, wie man moderne Benutzeroberflächen mit WPF und C# programmiert. Zunächst erhalten Sie einen Überblick über die grundlegenden Prinzipien der WPF-Architektur, bevor Sie die Syntax und Anwendung von ...