
In diesem Video stelle ich dir das Kursziel, mich und noch einmal den detaillierten Kursplan vor.
In dieser Lektion setzen wir gemeinsam die Entwicklungsumgebung auf. Egal, ob du macOS, Linux oder Windows benutzt, am Ende dieser Lektion sind wir auf dem gleichen Nenner. Wir installieren Virtualbox, eine virtuelle Maschine mit Ubuntu 20.04, Chrome und VSCode.
In dieser Lektion vermittle ich dir die nötigen Grundlagen zu Docker. Wir beantworten Fragen, wie zum Beispiel: "Was ist Docker?", "Was war/ist die Idee hinter Docker?", "Wozu kann ich Docker nutzen?" und "Was ist eigentlich der Unterschied zwischen einem Docker-Container und einer virtuellen Maschine?"
In dieser Lektion installieren wir gemeinsam Docker. Ich zeige dir zwei Varianten der Installation und erkläre dir die Rechteverwaltung.
In dieser Lektion stelle ich dir eine API Anwendung basierend auf der Programmiersprache Golang vor. Diesen Code werden wir hier zunächst lokal ausführen und im späteren Verlauf in einem Docker Container laufen lassen. Außerdem gebe ich eine kurze Einführung in das Tool cURL.
In dieser Lektion erkläre ich dir den Unterschied zwischen einem Docker-File, einem Docker-Image und einem Docker-Container. Außerdem beginnen wir direkt das erste Dockerfile zu schreiben, basierend auf dem im Vorbereitungskapitel vorgestellten Golang API Code.
In dieser Lektion lernst du, wie du dein in der vorherigen Lektion erstelltes Dockerfile, zu einem Image kompilierst. Wir sprechen über Themen wie Build-Arguments, Tags und das Prinzip des Filesystems. Ich erkläre dir, wir du Informationen zu einem Image erhältst und wir vergleichen verschiedene Images miteinander.
In dieser Lektion zeige ich dir, wie du einen Docker Container startest. Wir nutzen unter anderem auch das eigens erstellte Image. Weiterhin erfährst du nötige CLI Befehle, wie man Ports forwardet und Logs ansieht. Wir testen außerdem unsere API, die nun im Docker-Container läuft.
In dieser Lektion werden wir lernen, den API Container individuell zu konfigurieren. Das ganze erreichen wir über das Einbinden von Docker Volumes, einer config.yaml Datei und Umgebungsvariablen.
In dieser Lektion lernst du, was docker-compose ist, wozu man es benutzt und wie man es installiert.
In dieser Lektion zeige ich dir, wie man Stück für Stück das Gelernte aus dem Docker Native Kapitel, in ein docker-compose File übersetzt.
In dieser Lektion stelle ich dir die docker-compose CLI vor. Du lernst, wie du einen docker-compose stack startest, stoppst, wie du Logs anschauen kannst und dich auf eine Shell in einem Container verbinden kannst.
In diesem Video erweitern wir das erstellte docker-compose File um Container Namen, Umgebungsvariablen, Port Mapping und Restart Policy.
In dieser Lektion lernst du, wie du den Entrypoint überschreiben kannst, wie du tty und std_in mit docker-compose nutzt, wie man Docker Volumes und lokale Ordner via docker-compose in die Container mounted und wie man einen Health Check performen kann.
In dieser Lektion führe ich dich in die Welt des Docker Hubs ein. Ich erkläre dir den Begriff Bitnami und zeige dir, wie man sich einen persönlichen Account einrichtet und Images hochlädt.
In dieser Lektion zeige ich dir weitere Möglichkeiten deine Images online zu managen. Dies sind zum einen ECR (Elastic Container Registry) von AWS, GCR (Google Container Registry), GitLab und Nexus von Sonatype.
In dieser Lektion erkläre ich dir, wie du dein Cloud-Image-Repository mit der lokalen Docker Engine verbindest und deine privaten Images dann aus der Cloud nutzen kannst. Außerdem erfährst du wertvolles Know-How zum Thema Sicherheit in diesem Zusammenhang.
In dieser Lektion erkläre ich dir, was Postgres ist und wir bauen es direkt in unsere docker-compose Welt ein.
In dieser Lektion stellen wir die Verbindung zwischen unserer Go API und der Postgres Datenbank her.
In dieser Lektion lernst du was DBeaver ist, wie du es installierst und wie wir es nutzen können, um uns die Daten der Postgres Datenbank zu visualisieren. Wir werden außerdem die Postgres Datenbank migrieren und am Ende einen cURL Befehl an den API Container senden, der dann wiederrum die Daten in der PostgresDB persistieren wird. Das ganze werden wir mit DBeaver verifizieren.
In dieser Lektion lernst du, wie du den internen Docker Speicherort ändern kannst. Dies ist zum Beispiel nützlich, wenn du deine Daten serverseitig in Block Storages speichern möchtest.
In dieser Lektion erweitern wir unser docker-compose File um eine dritte Komponente, Grafana. Ich erkläre dir kurz was Grafana ist und wir greifen gemeinsam via Grafana auf die Daten in der PostgresDB zu.
In dieser Lektion erkläre ich dir, wie du Netzwerke, die in verschiedenen docker-compose Files definiert sind, miteinander verbinden kannst.
In dieser Lektion lernst du den Begriff Multistaging kennen. Wir bauen gemeinsam eines unserer Dockerfiles um und erörtern die Vor- und Nachteile dieser Intervention.
In dieser letzten Lektion erkläre ich dir, wie du den gesamten bisher genutzten Stack in einem Docker Swarm Cluster zum laufen bekommst. Vorher erstellen wir natürlich erst einmal das Cluster basierend auf einer Master VM, einer Worker VM und einer Client VM. Am Ende soll der Client, welcher nicht Teil des Docker Swarm Clusters ist, unsere API nutzen können und sich die Daten in Grafana anzeigen lassen können.
Ist dieser Kurs was für mich?
Ich freue mich, dass dich das Thema Docker interessiert und du auf der Suche nach tiefgreifendem Wissen bist. Jetzt kannst du durch atmen, denn du bist hier genau richtig. Der Kurs ist modular aufgebaut, das heißt du lernst nur so viel Theorie, wie du tatsächlich für das nächste praktische Tutorial benötigst und danach beginnt die nächste Iteration aus Theorie und Praxis.
Als Anfänger empfehle ich dir natürlich den kompletten Kurs zu belegen. Fortgeschrittene können sich je nach Wissensstand auch einzelne Module heraussuchen. Das Konzept des Kurses basiert auf der Idee: "Nur was ich selbst mindestens einmal wirklich gemacht habe oder gebraucht habe, hat eine Chance im Kopf zu bleiben."
Um was geht es hier genau?
Den konkreten Inhalt des Kurses findest du im Inhaltsverzeichnis sowie im kostenlos bereitgestellten Einführungsvideo. Das übergeordnete Ziel dieses Kurses ist es, eine Postgres Datenbank über eine selbst geschriebene API mit Mitarbeiterdaten eines fiktiven Unternehmens zu befüllen. Diese Daten werden dann graphisch mithilfe von Grafana und DBeaver dargestellt. Das Ganze wird natürlich komplett in einem Docker Netzwerk realisiert.
Wie kann ich mir den Ablauf des Kurses vorstellen?
Du bist von Anfang an mit dabei. Wir richten zunächst gemeinsam eine Entwicklungsumgebung ein, die meinem Setup gleicht. Danach bauen wir Stück für Stück dein Wissen auf und durchlaufen die Stationen Docker, Docker-Compose und Docker-Swarm bis du allein in der Lage bist, das im letzten Abschnitt beschriebene Setup in jeglicher Umgebung aufzusetzen.
Ich bin noch nicht überzeugt ...
Nun als ob das oben beschriebene noch nicht genug ist, bekommst du in diesem Kurs natürlich auch viel "Insider" Know-how aus der Welt eines Cloud Engineers. Das heißt, du bekommst die Lösungen sämtlicher Probleme, die ich in den letzten Jahren hatte, einfach so serviert. Wenn du immer noch nicht überzeugt bist sei noch gesagt, dass Udemy dir überdies eine 30-Tage Geld-Zurück Garantie bietet. Ich verspreche dir aber, dass du in keiner Sekunde daran denken wirst, diesen Kurs wieder zurück in Geld tauschen zu wollen :)
Also, packen wir es an. Let`s go.