Jenkins Pipeline as Code mit Jenkinsfile
Definieren Sie Build-, Test- und Deployment-Phasen deklarativ in einem in Ihrem Repository versionierten Jenkinsfile, sodass die Pipeline selbst zusammen mit der Anwendung versioniert wird.
Jenkins Pipeline as Code mit Jenkinsfile ist eine kostenlose DevOps Bootcamp-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des DevOps Bootcamp-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der DevOps Bootcamp-Kurs umfasst insgesamt 4 Lektionen.
Pipeline as Code
Statt Jobs von Hand in der Jenkins-Oberfläche zu konfigurieren, beschreiben Sie die gesamte Pipeline in einer Jenkinsfile, die in Ihrem Repository gespeichert ist. Die Pipeline wird zu Code: überprüfbar, versioniert und portabel.
Deklarativ vs. skriptbasiert
Jenkins bietet zwei Syntaxvarianten. Deklarative Pipelines sind strukturiert und einsteigerfreundlich; skriptbasierte Pipelines verwenden vollständiges Groovy. Wir konzentrieren uns auf die deklarative Variante.
Der pipeline-Block
Jede deklarative Jenkinsfile beginnt mit einem pipeline-Block, der einen agent (den Ausführungsort) und stages enthält.
pipeline {
agent any
stages {
stage('Build') {
steps { echo 'Building...' }
}
}
}Stages definieren
Jede stage fasst zusammengehörige steps zusammen. Stages erscheinen in der Jenkins-Oberfläche als Spalten und machen den Fortschritt der Pipeline übersichtlich sichtbar.
stages {
stage('Build') { steps { sh 'make build' } }
stage('Test') { steps { sh 'make test' } }
}Shell-Schritte ausführen
Der sh-Schritt führt einen Shell-Befehl auf dem Agent aus. Verwenden Sie ihn zum Kompilieren von Code, Ausführen von Tests oder Erstellen eines Docker-Images.
steps {
sh 'docker build -t myapp:${BUILD_NUMBER} .'
}Umgebungsvariablen
Ein environment-Block definiert Variablen für alle Schritte. Jenkins stellt außerdem integrierte Variablen wie BUILD_NUMBER und GIT_COMMIT bereit.
environment {
REGISTRY = 'registry.example.com'
IMAGE = 'myapp'
}Credentials-Bindung
Hardcodieren Sie niemals Secrets. Speichern Sie sie in den Jenkins-Credentials und binden Sie sie mit dem Helfer credentials() ein, damit sie in Logs maskiert werden.
environment {
REG_PASS = credentials('registry-password')
}Post-Aktionen
Ein post-Block wird nach Abschluss der Stages ausgeführt und kann abhängig vom Ergebnis unterschiedliche Aktionen ausführen. Er eignet sich ideal für Benachrichtigungen und Aufräumarbeiten.
post {
success { echo 'Pipeline succeeded' }
failure { echo 'Pipeline failed' }
always { sh 'docker image prune -f' }
}Parallele Stages
Beschleunigen Sie die Pipeline, indem Sie unabhängige Aufgaben mit parallel gleichzeitig ausführen – zum Beispiel Unit- und Integrationstests.
stage('Tests') {
parallel {
stage('Unit') { steps { sh 'make unit' } }
stage('Integration') { steps { sh 'make int' } }
}
}Bedingte Stages
Die when-Direktive führt eine Stage nur aus, wenn eine Bedingung erfüllt ist – zum Beispiel eine Bereitstellung nur im Main-Branch.
stage('Deploy') {
when { branch 'main' }
steps { sh './deploy.sh' }
}Multibranch-Pipelines
Verweisen Sie Jenkins auf ein Repository. Jenkins erkennt dann jeden Branch mit einer Jenkinsfile und erstellt automatisch eine Pipeline pro Branch. Feature-Branches erhalten dadurch automatisch CI.
Kurztest
Wo befindet sich die Definition einer deklarativen Pipeline?
Zusammenfassung
Sie haben gelernt, Pipelines als Code zu definieren:
pipeline { agent; stages }bildet das deklarative Grundgerüstsh-Schritte führen Befehle aus;environmentundcredentials()verwalten die Konfigurationpost,parallelundwhenerweitern die Möglichkeiten- Multibranch-Pipelines stellen automatisch für jeden Branch CI bereit
Die Jenkinsfile liegt zusammen mit Ihrem Code und entwickelt sich mit ihm weiter.
Lerne DevOps Bootcamp mit einem KI-Tutor — kostenlos
Schreibe und führe echten Code in deinem Browser aus, bekomme sofortige Hilfe von einem 24/7 KI-Tutor und setze dein Lernen im Web oder in der App fort.
- Kurse
- 142
- Lektionen
- 568
Häufig gestellte Fragen
Ist die Lektion „Jenkins Pipeline as Code mit Jenkinsfile“ kostenlos?
Ja — der vollständige Text von „Jenkins Pipeline as Code mit Jenkinsfile“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des DevOps Bootcamp-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der DevOps Bootcamp-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Jenkins Pipeline as Code mit Jenkinsfile“?
Definieren Sie Build-, Test- und Deployment-Phasen deklarativ in einem in Ihrem Repository versionierten Jenkinsfile, sodass die Pipeline selbst zusammen mit der Anwendung versioniert wird. Du übst DevOps Bootcamp mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um DevOps Bootcamp zu starten?
Keine Vorkenntnisse erforderlich. DevOps Bootcamp auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.
Wie lange dauert die Lektion „Jenkins Pipeline as Code mit Jenkinsfile“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser DevOps Bootcamp-Lektion Code schreiben und ausführen?
Ja. Jede DevOps Bootcamp-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Einführung in Jenkins
- Docker-Images mit Jenkins erstellen
- Automatisierte Bereitstellung mit Jenkins
- Jenkins Pipeline as Code mit Jenkinsfile