GitLab

Git ist heute meist die Versionsverwaltung der Wahl in der Software-Entwicklung. Doch Entwickerteams wünschen sich meist um git herum weitere Tools vom Issue Tracker bis zur Lösung für Continuous Integration. GitLab bietet all das - und anders als GitHub oder Bitbucket auch integrierbar in die eigene Infrastruktur.

Wir stellen die wichtigsten Feature von GitLab aus Sicht eines Entwicklers und eines Administrators vor. Ein Schwerpunkt liegt dabei auf der Konfiguration und dem Betrieb von GitLab als Lösung für Continuous Integration und Continuous Delivery, inklusive eines Einblicks in Kubernetes und die Integrationen von GitLab.

Voraussetzungen

Dieser Kurs richtet sich an Administratoren und Entwickler, die für ihr Team GitLab einrichten und betreiben wollen. Sie sollten mit den Abläufen und Tools rund um die Softwareentwicklung in Ihrer Organisation schon vertraut sein.

Sie sollten bereits Erfahrung mit der Administration von Linux haben, wie sie in unserer Schulung Linux Administration vermittelt wird.

Sie sollten bereits Erfahrung mit git als Versionsverwaltungstool haben, wie sie in unserer Schulung git vermittelt wird.

Inhalt

Einführung

  • Was ist GitLab?
  • Wozu brauche ich GitLab?

Verwaltung

  • Benutzer
  • Rollen
  • Projekte
  • Gruppen

Repository Management

  • Merge Requests
  • Branch Permissions
  • Reviews

Entwicklung mit GitLab

  • Web IDE
  • Container Registries
  • Ticket Management
  • Boards
  • Wiki
  • Integrationen

Administration

  • Installation
  • Upgrading
  • Design Anpassungen
  • CI/CD
  • OAuth
  • System Hooks
  • Metriken
    • Prometheus
    • InfluxDB
  • LDAP Anbindung
  • GitLab Software Komponenten

CI / CD mit GitLab

  • Wie denkt GitLab über CI/CD?
  • Auto DevOps
  • .gitlab-ci.yaml
  • Secrets
  • GitLab Pages
  • Kubernetes Integration
  • Multi-Stage Pipeline von Python zu Kubernetes Deployment