CI/CD Pipelines: A Comprehensive Guide
Dieser umfassende Leitfaden bietet eine tiefgehende Einführung in CI/CD-Pipelines (Continuous Integration/Continuous Delivery/Deployment) und behandelt zentrale Konzepte, Syntax und praktische Anwendungen. Sie lernen, wie CI/CD die Build-, Test- und Deployment-Phasen Ihrer Anwendung automatisiert – von der Ersteinrichtung bis zu fortgeschrittenen Themen wie Sicherheit, Debugging und der Integration von Cloud-Diensten wie Google Cloud. Diese Ressource hilft Ihnen, effiziente, automatisierte Workflows für die Softwareentwicklung zu verstehen und umzusetzen.
6-8 hours
15 Lektionen
Aktualisiert January 2025
GitLab Documentation
Comprehensive Guide
Ist diese Dokumentation die richtige für mich?
Diese umfassende Dokumentation richtet sich an Entwickler*innen, DevOps-Engineers und alle, die am Software-Lebenszyklus beteiligt sind und CI/CD-Pipelines verstehen, einführen oder optimieren möchten. Sie ist besonders hilfreich, wenn Sie Ihre Build-, Test- und Deployment-Prozesse automatisieren, die Zusammenarbeit verbessern und die Softwarequalität steigern möchten.
Voraussetzungen
- Grundlegendes Verständnis von Softwareentwicklungskonzepten.
- Vertrautheit mit Versionskontrollsystemen (wie Git) wird empfohlen.
- Grundkenntnisse auf der Kommandozeile.
Was werde ich lernen?
In dieser Dokumentation lernen Sie:
- Anwendungen mit CI/CD bauen und bereitstellen: Wie CI/CD-Pipelines das Kompilieren, Paketieren und die Artefakt-Erzeugung Ihrer Software automatisieren. Inklusive zweier Tutorials mit unterschiedlichem Schwierigkeitsgrad.
- Einstieg & Überblick: Ein grundlegendes Verständnis der CI/CD-Konzepte und wie die verschiedenen Funktionen in einer Pipeline zusammenspielen.
- CI/CD-YAML-Syntaxreferenz: Detaillierte Erläuterung der Schlüsselwörter, Syntax, Beispiele und Eingaben zur Definition Ihrer CI/CD-Workflows.
- Runner: Wie Sie Runner für die Ausführung von CI/CD-Jobs konfigurieren und verwalten.
- Pipelines: Ausführliche Behandlung der Pipeline-Konfiguration, Automatisierungsstrategien, der Definition von Stages, von Zeitplänen und der Optimierung der Pipeline-Effizienz.
- Jobs: Wie Sie einzelne Jobs konfigurieren, Regeln definieren, Caching einsetzen, Artefakte verwalten und Job-Logs auswerten.
- CI/CD-Komponenten: Wie Sie wiederverwendbare, versionierte CI/CD-Komponenten erstellen und nutzen, um die Pipeline-Entwicklung zu vereinfachen.
- CI/CD-Variablen: Konfiguration, Verwendung und Sicherheitsaspekte von CI/CD-Variablen.
- Pipeline-Sicherheit: Bewährte Verfahren für den Umgang mit Secrets, Job-Tokens, geschützte Dateien und Cloud-Sicherheit in Ihren Pipelines.
- Debugging: Verfahren zur Validierung der Konfiguration, zum Erkennen von Warnungen, zur Fehlerbehebung und zur allgemeinen Fehlersuche in CI/CD-Pipelines.
- Auto DevOps: Ein Überblick über die automatisierten DevOps-Funktionen, einschließlich Spracherkennung, Standard-Deployments und Anpassungsmöglichkeiten.
- Testing: Einbindung von Unit- und Integrationstests, Erzeugung von Testberichten, Messung der Code-Abdeckung und Sicherstellung der Qualität in der Pipeline.
- Google-Cloud-Integration: Wie Sie CI/CD-Pipelines mit Google-Cloud-Diensten integrieren und Kubernetes-Deployments verwalten.
- Migration zu GitLab CI/CD: Anleitung zur Migration bestehender CI/CD-Setups von Plattformen wie Jenkins, GitHub Actions und anderen zu GitLab CI/CD.
- Integrationen externer Repositories: Wie Sie externe Repositories wie GitHub und Bitbucket anbinden, Mirroring einrichten und plattformübergreifendes CI/CD verwalten.
Was werde ich können?
Am Ende dieses Tutorials können Sie:
- Robuste CI/CD-Pipelines für Ihre Anwendungen entwerfen und umsetzen.
- Build-, Test- und Deployment-Prozesse automatisieren und den manuellen Aufwand deutlich reduzieren.
- Effiziente und sichere CI/CD-Konfigurationen in YAML-Syntax schreiben.
- Pipeline-Fehler wirksam analysieren und beheben.
- Ihre CI/CD-Workflows mit externen Repositories und Cloud-Plattformen, einschließlich Google Cloud, integrieren.
- Bewährte Verfahren für Pipeline-Sicherheit und Secrets-Management verstehen und anwenden.
- Gegebenenfalls bestehende CI/CD-Setups zu GitLab CI/CD migrieren.