CI/CD (Continuous Integration / Continuous Delivery)
CI/CD steht für Continuous Integration und Continuous Delivery – zwei eng miteinander verbundene Prinzipien der modernen Softwareentwicklung, insbesondere in Cloud-NativeCloud-Native Der Begriff Cloud-Native beschreibt einen modernen Softwareentwicklungs- und Betriebsansatz, bei dem Anwendungen von Grund auf für den B... Mehr– und DevOps-Umgebungen. Ziel ist es, Software schneller, zuverlässiger und automatisierter von der Entwicklung bis zur Bereitstellung zu bringen.
CI/CD automatisiert viele Schritte im Lebenszyklus einer Anwendung: vom Code-Commit über Tests bis zur produktiven Auslieferung. Dadurch werden manuelle Fehlerquellen minimiert, die Qualität gesichert und Time-to-Market erheblich verkürzt.
Continuous Integration (CI):
- Entwickler pushen regelmäßig neuen Code in ein zentrales Repository
- Automatisierte Builds und Tests prüfen den Code sofort
- Fehler werden frühzeitig erkannt und können schnell behoben werden
Continuous Delivery (CD):
- Nach erfolgreicher Integration erfolgt die automatisierte Auslieferung an Test- oder Produktionssysteme
- Deployment-Prozesse sind wiederholbar und überprüfbar
- Optional: Continuous DeploymentDeployment (Kubernetes) Ein Deployment ist einer der zentralen Controller in Kubernetes, der für das Verwalten und Skalieren von Pods zuständig ist.... Mehr = vollautomatischer Go-LiveGo-Live Go-Live bezeichnet den offiziellen Zeitpunkt, an dem ein neues System, eine Software oder ein digitaler Dienst produktiv geschaltet und von de... Mehr
Typische Tools und Plattformen:
- GitLab CI, GitHub Actions, Jenkins, Azure DevOpsDevOps DevOps ist ein methodischer und technischer Ansatz, der Entwicklung (Development) und IT-Betrieb (Operations) eng miteinander verzahnt. Ziel is... Mehr, CircleCI
- Docker, HelmHelm Helm ist ein Open-Source-Paketmanager für Kubernetes, mit dem sich komplexe Anwendungen und Dienste in Clustern einfach installieren, aktualisie... Mehr, KubernetesKubernetes Kubernetes (kurz: K8s) ist eine Open-Source-Plattform zur automatisierten Bereitstellung, Skalierung und Verwaltung von Containern. Sie wur... Mehr für Container-basierte Deployments
Vorteile von CI/CD:
- Erhöht die Entwicklungsgeschwindigkeit und Produktqualität
- Reduziert Risiken durch automatisierte Tests und Rollbacks
- Fördert agile Entwicklungsmethoden und DevOps-Kultur
Verwandte Begriffe:
DevOps, Cloud-Native, ContainerContainer Container sind standardisierte, isolierte Softwareeinheiten, die Anwendungen inklusive ihrer Abhängigkeiten bündeln. Sie ermöglichen eine... Mehr, OrchestrierungOrchestrierung (Container-Orchestrierung) Orchestrierung bezeichnet in der IT die automatisierte Verwaltung, Skalierung und Steuerung von Container-ba... Mehr, GitOpsGitOps GitOps ist ein modernes Bereitstellungs- und Verwaltungsmodell für Cloud-Infrastrukturen und Applikationen, das die Prinzipien von Git – ins... Mehr, Infrastructure as Code