settings
OTEX_BIGISTQB®
Süddeutsche Zeitung Institut Auszeichnung
 Image
Alle Softwareentwicklung Schulungen

Schulung Dev Containers und Codespaces: Reproduzierbare Entwicklungsumgebungen

devcontainer.json, Docker-basierte Workspaces, GitHub Codespaces und Prebuilds

1 Tag / S6914
Neues Seminar
Per E-Mail senden

Schulungsformen

Inhouse-/Firmenschulung

  • 1 Tag - anpassbar
  • Termin nach Wunsch
  • In Ihrem Hause oder bei der GFU
  • Preis nach Angebot

  • Lernumgebung in der Cloud
  • Inhalte werden auf Wunsch an die Anforderungen Ihres Teams angepasst.
Präsenz Online Hybrid

Individualschulung

  • 1 Tag - anpassbar
  • Termin nach Wunsch
  • In Ihrem Hause oder bei der GFU
  • Preis nach Angebot

  • Lernumgebung in der Cloud
  • 1 Teilnehmender = Fokus aufs Fachliche und maximaler Raum für individuelle Fragen.
Präsenz Online Hybrid

Beschreibung

Jedes Entwicklerteam kennt das Ritual: neuer Kollege, erster Tag, Setup-Anleitung im Wiki (falls aktuell), 47 Schritte, 12 Tools installieren, 3 Konfigurationsdateien anpassen, am Ende funktioniert es trotzdem nicht, weil die Node-Version falsch ist, die Datenbank nicht startet oder ein Environment-Variable fehlt. Zwei Tage verloren, Motivation angekratzt.
Dev Containers lösen das Problem radikal: die gesamte Entwicklungsumgebung - Runtime, Tools, Extensions, Konfiguration, Datenbank - ist in einer einzigen Datei definiert (devcontainer.json) und läuft in einem Docker-Container. VS Code verbindet sich mit dem Container, als wäre er lokal. Jeder Entwickler, auf jedem Rechner, bekommt exakt dieselbe Umgebung. Node 22, PostgreSQL 16, Redis 7, ESLint, Prettier, die richtige TypeScript-Version - alles vorkonfiguriert, alles identisch.
GitHub Codespaces geht noch einen Schritt weiter: der Dev Container läuft nicht lokal, sondern in der Cloud. Ein Klick auf „Open in Codespace" -> 90 Sekunden -> vollständige Entwicklungsumgebung im Browser oder in VS Code. Kein Docker lokal nötig, kein leistungsstarker Laptop nötig, kein Setup nötig. Besonders wertvoll für Open-Source-Projekte, Onboarding und Szenarien, in denen lokale Installation nicht möglich oder nicht gewünscht ist.

Unser vielseitiges Angebot an Softwareentwicklung Weiterbildungen

Schulungsziel

Jede teilnehmende Person verlässt das Seminar mit dem Verständnis, warum Dev Containers „Works on my machine" eliminieren, der Fähigkeit, devcontainer.json für beliebige Tech Stacks zu konfigurieren (Single-Container und Docker Compose), praktischer Erfahrung mit GitHub Codespaces (inkl. Prebuilds und Kosten-Management), 3 funktionierenden Dev-Container-Konfigurationen als Referenz und der Kompetenz, Dev Containers im Team einzuführen (Onboarding, Policies, DevPod als Alternative).

Details

Inhalt

1. Das Problem und die Lösung: Warum Dev Containers?
  • Ziele und Erwartungen der Teilnehmenden
    • Klärung individueller Lernziele und Erwartungen für ein praxisnahes und relevantes Seminar
  • „Works on my machine": verschiedene OS-Versionen, verschiedene Runtime-Versionen, verschiedene Tool-Versionen, fehlende Dependencies - die häufigste Ursache für verschwendete Entwicklerzeit.
  • Dev Containers vs. Alternativen: lokale Installation (fragil), VMs (schwer, langsam), Docker Compose allein (kein IDE-Integration), Nix/devbox (steilere Lernkurve). Dev Container = Docker + VS-Code-Integration + standardisierte Spezifikation.
  • Dev Container Spec: offener Standard (devcontainers.io), unterstützt von VS Code, GitHub Codespaces, JetBrains, DevPod. Kein Vendor Lock-in.
  • Demo: Bestehendes Projekt ohne Dev Container: Setup-Anleitung lesen, 5 Tools installieren, Konfiguration anpassen -> 15 Minuten. Dasselbe Projekt mit Dev Container: „Reopen in Container" -> 90 Sekunden -> alles läuft.
2. devcontainer.json: Konfiguration von Grund auf
  • Grundstruktur: Base Image (vorgefertigte Dev-Container-Images für Node, Python, .NET, Java, Go, Rust), Features (zusätzliche Tools modular hinzufügen: Docker-in-Docker, AWS CLI, Terraform, GitHub CLI), Extensions (VS-Code-Extensions die automatisch im Container installiert werden), Settings (VS-Code-Settings die im Container gelten), Post-Create Commands (npm install, pip install, Datenbank-Migration - automatisch nach Container-Start).
  • Features: Modulare Tool-Installation ohne eigenes Dockerfile. Hunderte vorgefertigte Features (Node, Python, Docker, Kubernetes, Azure CLI, GitHub CLI). Community Features für Spezialtools.
  • Port Forwarding: Lokaler Zugriff auf Services im Container (Webserver, API, Datenbank). Automatisches Forwarding und Label-Konfiguration.
  • Environment Variables und Secrets: Env-Dateien einbinden, Secrets sicher an den Container übergeben (ohne sie in devcontainer.json zu committen).
  • Praxis-Übung: Dev Container 1 - Node.js-Projekt: devcontainer.json erstellen (Node 22, ESLint+Prettier-Extensions, Port 3000), in Container öffnen, npm install + npm start laufen automatisch, Webseite im Browser erreichbar.
3. Docker Compose Integration: Full-Stack-Projekte
  • Über das Base Image hinaus: Projekte mit Datenbank, Cache, Message Broker - ein einzelner Container reicht nicht.
  • Docker Compose in Dev Containers: devcontainer.json referenziert eine docker-compose.yml. Der Entwickler-Container ist einer von mehreren Services. Datenbank, Redis, Elasticsearch laufen als separate Container - alle zusammen per „Reopen in Container" gestartet.
  • Volumes und Persistenz: Datenbank-Daten überleben Container-Neustart. Workspace-Mount (Quellcode liegt auf dem Host, wird in den Container gemountet - Live-Änderungen ohne Rebuild).
  • Eigenes Dockerfile: Wenn das Base Image nicht reicht - eigenes Dockerfile für Spezialtools, Systemabhängigkeiten, Custom-Konfigurationen. Best Practices: Layer-Caching, Multi-Stage (nicht nötig für Dev Container, aber für Produktion), Image-Größe minimieren.
  • Praxis-Übung: Dev Container 2 - Full-Stack-Projekt: React-Frontend + Node.js-API + PostgreSQL + Redis. Docker Compose mit 4 Services, devcontainer.json für den Entwickler-Service, alle Ports konfiguriert. „Reopen in Container" -> gesamter Stack läuft, Frontend erreichbar, API verbindet sich mit Datenbank.
4. GitHub Codespaces: Dev Container in der Cloud
  • Codespaces-Konzept: Dev Container läuft auf einer GitHub-gehosteten VM. Zugriff über VS Code (Desktop) oder Browser-Editor. Kein Docker lokal nötig, kein leistungsstarker Laptop nötig.
  • Codespace erstellen: Aus einem Repository, aus einem Branch, aus einem Template. Maschinentyp wählen (2-Core bis 32-Core, 8 GB bis 64 GB RAM).
  • Prebuilds: Dev Container wird im Voraus gebaut (bei jedem Push auf main) -> Codespace startet in unter 30 Sekunden statt 2-5 Minuten. Für Teams mit großen Projekten essentiell.
  • Kosten und Limits: Kostenmodell (Compute pro Stunde + Storage pro GB/Monat), kostenlose Kontingente (60 Stunden/Monat für GitHub Free), Timeout-Einstellungen (Codespace stoppt nach Inaktivität).
  • Codespaces für Teams: Organization-weite Policies (maximale Maschinengröße, erlaubte Repositories, Retention), Prebuild-Konfiguration, Kostenkontrolle.
  • Praxis-Übung: Codespace für das Full-Stack-Projekt starten (Browser-Editor oder VS Code Desktop). Prebuild konfigurieren. Code ändern, committen, pushen - alles aus dem Codespace heraus. Codespace stoppen und neu starten -> Zustand bleibt erhalten.
5. Fortgeschrittene Patterns und Praxis-Workshop
Fortgeschrittene Patterns (20 Min):
  • Multi-Container Dev Environments: Microservices-Projekte mit mehreren Dev Containern (ein Container pro Service), die unabhängig voneinander gestartet werden.
  • DevPod: Open-Source-Alternative zu Codespaces - Dev Container auf beliebiger Infrastruktur starten (lokale Docker-Engine, AWS, Azure, GCP, SSH-Server). Vendor-unabhängig.
  • Dev Container CLI: Dev Container außerhalb von VS Code nutzen (in CI/CD-Pipelines, in JetBrains, in Terminal-basierten Workflows).
  • Lifecycle Scripts: onCreateCommand (einmalig bei Erstellung), postCreateCommand (nach jedem Erstellen), postStartCommand (nach jedem Start), postAttachCommand (nach jedem Verbinden). Für: Datenbank-Seeding, Git-Hooks installieren, Credentials konfigurieren.
Praxis-Workshop (30 Min):
  • Phase 1 - Eigenes Projekt containerisieren (20 Min): Eigenes Projekt (oder vorgegebenes Szenario) als Dev Container konfigurieren: Tech Stack identifizieren, Base Image + Features wählen, Extensions definieren, Docker Compose für Infrastruktur-Services, Post-Create-Command für Setup-Automatisierung. Testen: „Reopen in Container" -> Projekt muss ohne manuelle Schritte laufen.
  • Phase 2 - Peer-Review (10 Min): Dev-Container-Konfiguration vorstellen. Stresstest: „Ein neuer Entwickler klont euer Repo und öffnet den Dev Container - muss er noch irgendetwas manuell tun?" „Die Datenbank-Migration schlägt fehl - was passiert?" „Euer Dev Container ist 8 GB groß - wie verkleinert ihr ihn?"

  • Teamleiter und Tech Leads: Die das Onboarding neuer Teammitglieder von 1-2 Tagen auf 5 Minuten verkürzen und „Works on my machine"-Probleme aus dem Team eliminieren.
  • DevEx- und Platform-Teams: Die standardisierte Entwicklungsumgebungen für die gesamte Organisation bereitstellen.
  • Entwickler in polyglotten Projekten: Die zwischen Node.js-, Python-, .NET- und Java-Projekten wechseln und für jedes Projekt die korrekte Toolchain brauchen - ohne lokale Konflikte.
  • Open-Source-Maintainer: Die Contributors einen sofort funktionierenden Workspace bieten wollen - ein Klick auf „Open in Codespace" statt einer 20-Schritte-Setup-Anleitung.
Voraussetzungen: Grundkenntnisse in VS Code. Docker-Grundverständnis (was ist ein Container, was ist ein Image). Keine Dev-Container-Vorkenntnisse nötig.


In Präsenz

Online
Lernmethode

Ausgewogene Mischung aus Theorie und praktischen Übungen auf persönlichem Schulungs-PC.

Wie auch bei unseren Präsenz-Seminaren: Ausgewogene Mischung aus Theorie und praktischen Übungen. Trainer durchgehend präsent.

Unterlagen

Seminarunterlagen oder Fachbuch inklusive. Das Fachbuch wählt der Trainer passend zum Seminar aus - Ihren individuellen Buch-Wunsch berücksichtigen wir auf Nachfrage gerne.

Seminarunterlagen oder Fachbuch inklusive (via DHL). Das Fachbuch wählt der Trainer passend zum Seminar aus - Ihren individuellen Buch-Wunsch berücksichtigen wir auf Nachfrage gerne.

Arbeitsmaterialien

Din A4 Block, Notizblock, Kugelschreiber, USB-Stick, Textmarker, Post-its

Teilnahmezertifikat

Nach Abschluss des Seminars erhalten Sie das Teilnahmezertifikat inkl. Inhaltsverzeichnis per E-Mail als PDF.


In Präsenz

Online
Teilnehmendenzahl

min. 1, max. 8 Personen

Garantierte Durchführung *

Ab 1 Teilnehmenden

Schulungszeiten
1 Tag, 09:00 - 16:00 Uhr
Ort der Schulung
GFU Schulungszentrum oder Virtual Classroom
GFU Schulungszentrum
Am Grauen Stein 27
51105 Köln-Deutz

oder online im Virtual Classroom oder europaweit bei Ihnen als Inhouse-Schulung

Um ein optimales Raumklima zu gewährleisten, haben wir das Schulungszentrum mit 17 hochmodernen Trotec TAC V+ Luftreinigern ausgestattet. Diese innovative Filtertechnologie (H14 zertifiziert nach DIN EN1822) sorgt dafür, dass die Raumluft mehrfach pro Stunde umgewälzt wird und Schadstoffe zu 99.995% im HEPA-Filter abgeschieden und infektiöse Aerosole abgetötet werden.

Zusätzlich sind alle Räume mit CO2-Ampeln ausgestattet, um jederzeit eine hervorragende Luftqualität sicherzustellen.

Räumlichkeiten

Helle und modern ausgestattete Räume mit perfekter Infrastruktur

Bequem aus dem Homeoffice von überall

All-Inclusive

Frühstück, Snacks und Getränke ganztägig, Mittagessen im eigenen Restaurant, täglich 6 Menüs, auch vegetarisch

Eine Auswahl unserer Frühstücks-Snacks und Nervennahrungs-Highlights senden wir Ihnen mit den Seminarunterlagen via DHL zu.
Barrierefreiheit

Das GFU-Schulungszentrum (Am Grauen Stein 27) ist barrierefrei

-

In Präsenz

Online
  • Eigener Shuttle-Service
  • Reservierte Parkplätze
  • Hotelreservierung
  • Technik-Sofort-Support

Buchungsmöglichkeiten

Online oder in Präsenz teilnehmen

Sie können sowohl Online als auch in Präsenz am Seminar teilnehmen. Klicken Sie bei Ihrer Buchung oder Anfrage einfach die entsprechende Option an.

Inhouse-/Firmenschulung
  • Lernumgebung in der Cloud
  • Inhalte werden auf Wunsch an die Anforderungen Ihres Teams angepasst.
Präsenz Online Hybrid
Individualschulung
  • Lernumgebung in der Cloud
  • 1 Teilnehmender = Fokus aufs Fachliche und maximaler Raum für individuelle Fragen.
Präsenz Online Hybrid

So haben GFU-Kunden gestimmt

Zu diesem Seminar wurden noch keine Bewertungen abgegeben.

FAQ für Inhouse Schulungen

Bei einer offenen Schulung stehen Ort und Termin vorab fest. Jeder Interessent kann eine offene Schulung buchen, daher treffen Teilnehmer aus verschiedenen Unternehmen aufeinander.

Inhouse Schulungen können auf Ihren individuellen Schulungsbedarf zugeschnitten werden. Sie bestimmen den Teilnehmerkreis, Termin und Schulungsort.

Bei einer Inhouse Schulung gehen wir auf die individuellen Bedürfnisse Ihres Unternehmens ein und decken den Schulungsbedarf direkt bei Ihnen im Unternehmen ab.

Das spart Zeit und Geld und sorgt für einen schnellen Wissenstransfer Ihrer Mitarbeiter.

Eine komplette Lernumgebung in der Cloud mit Remote Zugriff ist für uns selbstverständlich. Sie müssen sich um nichts kümmern. Lediglich ein funktionierender PC oder Notebook mit Internetanschluss sollte für jeden Teilnehmer am Schulungstag bereit stehen.

  • Kompetente Seminarberatung
  • Dozenten aus der Praxis
  • Auf Ihre Bedürfnisse zugeschnittener individueller Lernstoff
  • Sie können den Termin flexibel gestalten, so wie es für Sie am besten passt
  • Unsere Inhouse Schulungen können Europaweit durchgeführt werden
  • Der Fokus liegt auf Ihrem Schulungsbedarf, somit schonen Sie Ihr Budget
  • Wissenslücken Ihrer Mitarbeitet werden schnell geschlossen
aegallianzaxaElement 1deutsche-bankdeutsche-postlufthansamercedessonyzdf