DevOps in der Praxis – Softwareentwicklung automatisieren und optimieren

Trainer: Gunnar Bless
Dauer: 3 Tage
Zielgruppe:

Das Seminar richtet sich an Softwareentwicklerinnen und Softwareentwickler, IT-Fachkräfte, DevOps-Engineers, Systemadministratoren sowie technische Projektverantwortliche in Unternehmen, Behörden und öffentlichen Einrichtungen, die moderne Entwicklungs- und Bereitstellungsprozesse kennenlernen oder bestehende Abläufe optimieren möchten.

Besonders angesprochen sind Personen, die Softwareprojekte effizienter organisieren, wiederkehrende Entwicklungs- und Testprozesse automatisieren und Anwendungen zuverlässig bereitstellen und betreiben möchten. Das Seminar eignet sich sowohl für Mitarbeitende aus der Softwareentwicklung als auch aus dem IT-Betrieb, die ihre Zusammenarbeit verbessern und DevOps-Methoden in bestehende IT-Strukturen integrieren möchten.

DevOps in der Praxis – Softwareentwicklung automatisieren und optimieren

Inhalte

Tag 1 – DevOps-Grundlagen, Git und Continuous Integration

Einführung in DevOps

  • DevOps verstehen: Ziele, Prinzipien und Vorteile für Unternehmen und Behörden
  • Zusammenarbeit zwischen Entwicklung, Test und IT-Betrieb
  • DevOps-Kultur, CALMS-Modell und kontinuierliche Verbesserung von Entwicklungsprozessen
  • Einordnung von DevOps, Agile, MLOps und DataOps

Versionsverwaltung und Zusammenarbeit mit Git

  • Git in der Praxis: Branching-Strategien (Trunk-based Development und GitFlow)
  • Branches, Merge, Rebase, Tags und Pre-Commit-Hooks
  • Kollaborative Softwareentwicklung mit Feature-Branches und Pull Requests
  • Praxisübung: Git-Workflow für die gemeinsame Softwareentwicklung einrichten

Entwicklungsumgebungen und Codequalität

  • Reproduzierbare Entwicklungsumgebungen und Abhängigkeitsmanagement
  • Codequalität durch automatisierte Formatierung und statische Codeanalyse (Ruff, Black)
  • Automatisierte Tests als Bestandteil moderner Entwicklungsprozesse
  • Einführung in pytest und testgetriebene Qualitätssicherung

Continuous Integration mit GitHub Actions

  • Grundlagen von Continuous Integration (CI)
  • GitHub Actions: Workflows, Jobs, Runner und Matrix-Builds
  • Automatisierte Tests und Qualitätsprüfungen bei Codeänderungen
  • Praxisübung: CI-Pipeline mit automatischem Linting und pytest erstellen

 

Tag 2 – Containerisierung und automatisierte Bereitstellung

Containertechnologien mit Docker

  • Grundlagen und Architektur von Docker
  • Docker Images, Container, Layer und Dockerfiles
  • Best Practices und Multi-Stage-Builds
  • Mehrere Container mit Docker Compose verwalten
  • Praxisübung: Eine eigene Anwendung containerisieren

Container-Registries und Sicherheit

  • Verwaltung und Veröffentlichung von Container-Images
  • Nutzung von GitHub Container Registry (GHCR)
  • Sicherheit von Container-Images und Schwachstellenanalyse mit Trivy
  • Sichere Konfiguration und Verwaltung von Abhängigkeiten

Continuous Delivery und Continuous Deployment

  • Vom automatisierten Test zur automatisierten Bereitstellung
  • Build-, Release- und Deployment-Pipelines
  • Umgebungsmanagement: Development, Staging und Production
  • Sicherer Umgang mit Zugangsdaten und Secrets
  • Praxisübung: CI-Pipeline um automatisierten Image-Build und Push erweitern

Infrastructure as Code (IaC)

  • Infrastruktur automatisiert und reproduzierbar bereitstellen
  • Deklarative und imperative Ansätze im Vergleich
  • Grundlagen von Terraform
  • Praxisübung: Einfache Infrastruktur mit Terraform beschreiben und verwalten

 

Tag 3 – Betrieb, Monitoring und DevOps in der Praxis

Monitoring, Logging und Observability

  • Anwendungen und Infrastruktur kontinuierlich überwachen
  • Einführung in Prometheus und Grafana
  • Strukturierte Logs, Health Checks und Alerting-Konzepte
  • Praxisübung: Anwendungsmetriken erfassen und visualisieren

Kubernetes und moderne Betriebsplattformen

  • Grundlagen der Container-Orchestrierung
  • Kubernetes-Konzepte: Pods, Deployments und Services
  • Anwendungen in Containerumgebungen bereitstellen und skalieren
  • Cloudbasierte und selbstverwaltete Plattformen im Vergleich
  • Einsatzmöglichkeiten in bestehenden Unternehmens- und Behördeninfrastrukturen

DevOps Best Practices und organisatorische Einführung

  • Bewährte Prinzipien moderner Softwarearchitekturen (Twelve-Factor App)
  • Trunk-based Development und kontinuierliche Verbesserung
  • Erfolgsmessung mit DORA-Metriken
  • Fehleranalyse, Incident Management und Postmortems
  • DevOps-Prozesse in bestehende IT-Organisationen integrieren
  • Sicherheits-, Compliance- und Governance-Anforderungen berücksichtigen

 

Praxisprojekt – Durchgängige DevOps-Pipeline

Die Teilnehmenden entwickeln in Teams einen vollständigen DevOps-Workflow für eine beispielhafte Anwendung:

  • Versionsverwaltung und Zusammenarbeit mit Git
  • Automatisierte Codeprüfung und Tests mit GitHub Actions
  • Containerisierung der Anwendung mit Docker
  • Automatisierte Erstellung und Veröffentlichung eines Container-Images

Abschließend werden die erarbeiteten Lösungen vorgestellt, diskutiert und hinsichtlich ihrer Übertragbarkeit auf die eigene IT-Umgebung bewertet

Ihre Vorteile bei Data Engineering & Deployment Schulungen durch edv-coaching.de:
  • projekt- und lehrerfahrene Trainer
  • maßgeschneiderte Inhalte und umfangreiche Unterlagen
  • Betreuung auch nach dem Training
  • bundesweite Trainings in Ihrem Hause oder als Online-Schulung
  • Training in Österreich und in der Schweiz
  • Durchführung in deutscher oder englischer Sprache.
Kurs Anfrage

Danke für Ihr Interesse an diesem Kurs. Sie erhalten in Kürze ein Angebot.

Gewählter Kurs: DevOps in der Praxis – Softwareentwicklung automatisieren und optimieren
Dauer: 3 Tage

Die mit * gekennzeichneten Felder sind Pflichtfelder.

Empfehlen Sie diesen Kurs
Kurs: DevOps in der Praxis – Softwareentwicklung automatisieren und optimieren

Die mit * gekennzeichneten Felder sind Pflichtfelder.