Docker komplett Vom Anfanger zum Profi inkl Kubernetes

Lerne alles zum Thema Docker (Dockerfiles, Docker Compose, bis hin zum Deployment mit Swarm oder Kubernetes)
Docker komplett Vom Anfanger zum Profi inkl Kubernetes
File Size :
13.24 GB
Total length :
18h 15m

Category

Instructor

Jannis Seemann

Language

Last update

2/2023

Ratings

4.6/5

Docker komplett Vom Anfanger zum Profi inkl Kubernetes

What you’ll learn

Lerne die Grundlagen von Docker und Kubernetes
Lerne praxisorientiert und am Beispiel mit vielen Aufgaben und Quizzen
Lerne wie du mit Containern, Images & Volumes umgehst
Verknüpfe mehrere Container mit Docker Compose
Optimiere deine Arbeitsabläufe mit Docker
Erstelle eigene Images mit einem Dockerfile
Vereinfache das Deployment auf ein Produktiv-System

Docker komplett Vom Anfanger zum Profi inkl Kubernetes

Requirements

Es sind keine Programmierkenntnisse nötig. Du lernst alles, was du wissen musst.
Grundkenntnisse auf der Kommandozeile (Shell / PowerShell / Bash / …) sind hilfreich, aber nicht notwendig

Description

“Auch außerhalb von Udemy, der mit Abstand beste Kurs um docker zu verstehen und für eigene Projekte nutzen zu können. Der Aufbau des Kurses ist super. Vielen Dank dafür!” (★★★★★, Stefan Zöllner)Lerne jetzt 2 der gefragtesten Technologien in der IT in einem Kurs: Docker und KubernetesMit Docker kann deine Anwendung in einem “Container” ausgeführt werden. Was bedeutet das? Ein Container ist eine Umgebung, die von deinem Computer (Host) abgegrenzt ist, und in der dann deine Anwendung ausgeführt wird. Der Vorteil dabei ist, dass sich dieser Container einfach auf ein anderes System übertragen lässt – inklusive der gesamten Software & Konfiguration. Das spart dir eine zeitaufwendige Konfiguration des Produktiv-Servers.Zudem ist durch den Container die Software-Umgebung der Anwendung genau spezifiziert. Sie wird dadurch überall genau gleich funktionieren – aufwendiges Debuggen nach Installation auf einem neuen System kann daher oft entfallen.Docker und Kubernetes:Neben Docker bekommst du in diesem Kurs auch einen Einstieg in die Welt von Kubernetes. Mit Kubernetes kannst du anschließend eine Anwendung aus Microservices in einer Cloud laufen lassen – eine hochmoderne und skalierbare Software-Architektur.Für wen ist dieser Kurs?Dieser Kurs ist ideal für dich, wenn du als Entwickler oder Systemadministrator deine Arbeitsprozesse mit Docker verbessern möchtest. Als Entwickler kannst du mit Docker z.B. binnen ein paar Sekunden Python in einer spezifischen Version starten, und du kannst die Abhängigkeiten deiner Anwendung genau spezifizieren. Als Systemadministrator ermöglicht dir Docker ein vereinfachtes Deployment von deiner Anwendung.Was lernst du in diesem Kurs?Docker Grundlagen (was ist ein Container, ein Image)Dateimanagement in Docker (Bind Mounts, Volumes, docker cp,…)Networking in Docker (Port weiterleiten,…)Dockerfiles: Baue eigene Images und führe deine eigene Anwendung in Docker ausDocker compose: Verwalte eine Anwendung aus mehreren ImagesDocker swarm: Führe deine Anwendung in einem Cluster ausKubernetes: Administriere eine komplexe Cluster-Architektur und führe dort Microservices ausDas hier ist ein Praxiskurs: Es gibt unzählige Beispiele, Übungen und Quizze. Dadurch enthält dieser Kurs keine trockene Theorie, sondern alles ist anschaulich und wird am Beispiel erklärt. SUMMA SUMMARUMDieser Kurs lohnt sich für alle, die ihren Workflow mit Docker optimieren möchten.Lerne Schritt für Schritt Docker und Kubernetes, mit einem guten Mix aus Theorie, Praxis und Quizzen. Dieser Kurs bietet dir über 18 Stunden Video-Lektionen, die alle aufeinander aufbauen. So lernst Docker und Kubernetes Schritt für Schritt und mit System.Klingt gut?Dann würde ich mich sehr freuen, dir noch heute die Tür zu Docker und Kubernetes öffnen zu können.Du lernst mit dem erfolgreichsten, deutschsprachigen Dozenten auf Udemy.Schau dir auch meine Video Nachricht an, oder lies dir noch ein paar Bewertungen durch – überzeuge dich einfach selbst 🙂

Overview

Section 1: Einführung

Lecture 1 Motivation und Aufbau des Kurses

Lecture 2 Download der Slides

Lecture 3 Problem: Replizierbarkeit von Anwendungsumgebungen

Lecture 4 Virtuelle Maschinen und Rechnerarchitektur

Lecture 5 Was ist ein Container?

Lecture 6 Hinweis [Windows]: WSL2 Installation is incomplete

Lecture 7 Installation von Docker Desktop

Lecture 8 Erste Docker-Container ausführen (Ubuntu & Python)

Lecture 9 Crashkurs: Grundlegende Kommandos in der Linux-Shell

Lecture 10 Hinweis zur nächsten Lektion

Lecture 11 Beispiel: Einen Apache-Webserver in einer Minute aufsetzen

Lecture 12 Die Architektur von Docker-Containern

Lecture 13 Troubleshooting: Hilfestellungen für grundsätzliche Probleme

Lecture 14 Aufgabe: Einführung in Docker

Lecture 15 Musterlösung: Einführung in Docker

Section 2: Containers & Images

Lecture 16 Einführung und Lernziele

Lecture 17 Docker Host, Docker Client und der Docker Daemon

Lecture 18 Was ist ein Image und was ist Docker Hub?

Lecture 19 Images herunterladen: docker pull

Lecture 20 Der Aufbau von einem Docker-Image und wie man Images untersucht

Lecture 21 Tags von einem Images

Lecture 22 Images taggen: docker image tag

Lecture 23 Images löschen: docker image rm

Lecture 24 Container erzeugen und starten

Lecture 25 docker create vs. docker start vs. docker run

Lecture 26 Container untersuchen: docker inspect und docker history

Lecture 27 Container benennen: docker rename und die Flag –name

Lecture 28 Container stoppen und neu starten: docker stop und docker start

Lecture 29 Container löschen: docker rm

Lecture 30 Troubleshooting: typische Fehler beheben

Lecture 31 Programme in einem Container starten: docker exec

Lecture 32 Containern mit Docker Desktop grafisch verwalten

Lecture 33 Aufgabe: Docker Grundlagen

Lecture 34 Musterlösung: Docker Grundlagen

Section 3: Grundlagen des Container Networkings

Lecture 35 Einführung und Lernziele

Lecture 36 Der detached-Mode (die Flag -d): Container im Hintergrund laufen lassen

Lecture 37 Die restart-Policies (die Flag –restart): Container automatisch starten

Lecture 38 Crash-Kurs: Was sind Ports?

Lecture 39 Portweiterleitungen und Ports freigeben (die Flagge -p): nginx-Webserver starten

Lecture 40 Ports beim Erstellen eines Containers veröffentlichen

Lecture 41 Beispiel: Einen PHP-Webserver mit Docker starten

Lecture 42 Beispiel: Eine PySpark-Umgebung mit Docker starten

Lecture 43 Aufgabe: nginx-Webserver abändern

Lecture 44 Lösung: nginx-Webserver abändern

Section 4: Dateimanagement in Containern

Lecture 45 Das Projekt in diesem Abschnitt

Lecture 46 Einführung und Lernziele

Lecture 47 Dateien in und aus einem Container kopieren: docker cp

Lecture 48 Beispiel: Webseite mit nginx-Webserver ausliefern

Lecture 49 Wichtiger Hinweis: Der Fehler “invalid reference format”

Lecture 50 Was sind Mounts und wie führt man einen bind mount durch?

Lecture 51 Read-only bind mounts

Lecture 52 Beispiel: bind mount für Data Science Notebook

Lecture 53 Kursmaterialien für die nächste Lektion

Lecture 54 Aufgabe mit Musterlösung: Webseite mit PHP-Webserver ausliefern

Lecture 55 Best practice: docker cp vs bind mount

Lecture 56 Beispiel: Markdown mit pandoc in PDF umwandeln

Lecture 57 Was sind Volumes?

Lecture 58 Die Flag -v: Volume mit Container verknüpfen

Lecture 59 Automatisch generierte Volumes (anhand von MariaDB)

Lecture 60 Kursmaterialien für die nächste Lektion

Lecture 61 Projekt: MariaDB-Datenbank updaten (Teil 1)

Lecture 62 Projekt: MariaDB-Datenbank updaten (Teil 2)

Lecture 63 Volumes mit Docker Desktop grafisch verwalten

Section 5: Netzwerke in Docker

Lecture 64 bridge-Netzwerke in Docker

Lecture 65 Das host- und das none-Netzwerk

Lecture 66 Ein neues bridge-Netzwerk erstellen: docker network create

Lecture 67 phpymyadmin und MariaDB in Netzwerk verbinden

Lecture 68 WordPress und MariaDB in Netzwerk verbinden

Lecture 69 Umgebungsvariablen setzen

Lecture 70 Aufgabe: MongoDB und Mongo Express verwenden

Lecture 71 Musterlösung: MongoDB und Mongo Express verwenden

Section 6: Dockerfiles (Teil 1): eigene Images entwickeln

Lecture 72 Aufbau und Verwendung von Dockerfiles

Lecture 73 Eigene Images mit Dockerfiles erstellen: docker build

Lecture 74 Von einem Basis-Image ableiten: FROM

Lecture 75 Befehle beim Bau eines neuen Images ausführen: RUN

Lecture 76 Kursmaterialien für die nächste Lektion

Lecture 77 Dateien in ein neues Image kopieren: COPY und ADD

Lecture 78 Befehle beim Start eines Containers ausführen: CMD

Lecture 79 Einen Container als Service ausführen: ENTRYPOINT

Lecture 80 Das Arbeitsverzeichnis wechseln: WORKDIR

Lecture 81 Build- und Umgebungsvariablen setzen: ARG und ENV

Lecture 82 Mounts durchführen: VOLUME

Lecture 83 Ports dokumentieren: EXPOSE

Lecture 84 Beispiele: Geläufige Dockerfiles analysieren

Lecture 85 Sicherheitshinweise für die Verwendung von ARG- und ENV-Variablen

Lecture 86 Kursmaterialien für die nächste Lektion

Lecture 87 Beispiel: eine Flask-App containerisieren/dockerisieren

Lecture 88 Kursmaterialien für die nächste Lektion

Lecture 89 Aufgabe: Lernumgebung für den Editor vim einrichten

Lecture 90 Musterlösung: Lernumgebung für den Editor vim einrichten

Lecture 91 Aufgabe: Dockerfiles anwenden

Lecture 92 Musterlösung: Dockerfiles anwenden

Section 7: Dockerfiles (Teil 2) & fortgeschrittenes Wissen

Lecture 93 Einleitung und Lernziele

Lecture 94 Hinweis zur nächsten Lektion

Lecture 95 Metadaten für neue Images: LABEL

Lecture 96 Dateien beim Bau von Images nicht beachten: Die .dockerignore-Datei

Lecture 97 CPU-Architekturen: ARM vs x86

Lecture 98 Alpine Linux (Teil 1)

Lecture 99 Alpine Linux (Teil 2)

Lecture 100 Alpine Linux (Teil 3)

Lecture 101 Kursmaterialien für die nächste Lektion

Lecture 102 Dockerfiles optimieren: Multi-Stage-Builds

Lecture 103 Kursmaterialien für die nächste Lektion

Lecture 104 Aufgabe: Multi-Stage-Build für Go-App

Lecture 105 Musterlösung: Multi-Stage-Build für Go-App

Section 8: docker compose: Mehrere Container gleichzeitig konfigurieren

Lecture 106 Einleitung und Überblick über docker compose

Lecture 107 Crash-Kurs: Die Auszeichnungssprache YAML

Lecture 108 Kursmaterialien für diesen Abschnitt

Lecture 109 Der Aufbau einer compose.yaml und das Kommando docker compose up

Lecture 110 Eigenes Dockerfile in compose.yaml verwenden

Lecture 111 Beispiel: phpmyadmin und MariaDB mit docker compose

Lecture 112 Restart Policies mit docker compose

Lecture 113 Abhängigkeiten zwischen Services mittels depends_on angeben

Lecture 114 Volumes und bind mounts mit docker compose

Lecture 115 Einen Service skalieren

Lecture 116 Umgebungsvariablen in compose.yaml verwenden

Lecture 117 Beispiel: WordPress mit docker compose starten

Lecture 118 Services gruppieren mit Profiles

Lecture 119 Die Subkommandos von docker compose: docker compose down usw.

Lecture 120 Projekt / Aufgabe: Full-Stack mit docker compose

Lecture 121 Projekt / Wichtige Hinweise: Full-Stack mit docker compose

Lecture 122 Projekt / Musterlösung: Full-Stack mit docker compose

Section 9: Docker Swarm: docker engines auf einem Cluster administrieren

Lecture 123 Einleitung und Lernziele

Lecture 124 Was sind Microservices?

Lecture 125 Was ist Docker Swarm?

Lecture 126 Der Aufbau von einem Swarm und eigenen Swarm initialisieren

Lecture 127 Service auf einem Swarm erstellen: docker service create

Lecture 128 Beispiel: PHP-Webserver auf einem Swarm ausführen

Lecture 129 Requestes zwischen Nodes weiterleiten: routing mesh

Lecture 130 Wie startet Docker Swarm einen Container?

Lecture 131 Vertrauliche Daten schützen: Secrets

Lecture 132 Konfigurationsdateien auf dem Swarm verteilen: Configs

Lecture 133 Template-Engine auf Konfigurationsdatei anwenden: templated configs

Lecture 134 Beispiel: Multi-Container-Anwendung auf Swarm (Teil 1) – docker stack deploy

Lecture 135 Beispiel: Multi-Container-Anwendung auf Swarm (Teil 2) – Secrets einbauen

Lecture 136 Beispiel: Multi-Container-Anwendung auf Swarm (Teil 3) – Configs einbauen

Lecture 137 Projekt: Docker Swarm auf einem echten Cluster (Teil 1)

Lecture 138 Projekt: Docker Swarm auf einem echten Cluster (Teil 2)

Section 10: Crash-Kurs Kubernetes: Container-Anwendungen auf einem Cluster administrieren

Lecture 139 Einleitung und Lernziele

Lecture 140 Was ist Kubernetes (K8s)?

Lecture 141 Was ist ein Pod?

Lecture 142 Die Komponenten in einem K8s-Cluster: kubelet, etcd, kube-apiserver usw.

Lecture 143 Kubernetes vs Docker Swarm

Lecture 144 Was ist Minikube?

Lecture 145 Minikube-Installation unter Windows

Lecture 146 Minikube-Installation unter macOS

Lecture 147 Das Kubernetes Dashboard

Lecture 148 Das Kommando kubectl und grundlegende Abfragen

Lecture 149 Der Aufbau von kubectl – Kommandos

Lecture 150 Theorie: Workloads, Deployments, ReplicaSets

Lecture 151 Praxis: Workloads, Deployments, ReplicaSets

Lecture 152 Deployments in YAML konfigurieren

Lecture 153 Labels in K8s-Konfigurationsdateien verwenden (Teil 1)

Lecture 154 Labels in K8s-Konfigurationsdateien verwenden (Teil 2)

Lecture 155 Mehrere Deployments in einer Konfigurationsdatei

Lecture 156 Ein Deployment mit kubectl debuggen

Lecture 157 Networking in K8s: Services

Lecture 158 Einen Service erstellen: kubectl expose

Lecture 159 Services mit kubectl verwalten

Lecture 160 Services in YAML-Datei konfigurieren

Lecture 161 Projekt: Webseite auf nginx-Webserver ausliefern (Vorstellung)

Lecture 162 Projekt: Webseite auf nginx-Webserver ausliefern (Schritt 1) – Dockerfile

Lecture 163 Projekt: Webseite auf nginx-Webserver ausliefern (Schritt 2) – Daemon ansteuern

Lecture 164 Projekt: Webseite auf nginx-Webserver ausliefern (Schritt 3) – Konfiguration

Lecture 165 Crash-Kurs: DNS

Lecture 166 Interne Kommunikation im K8s-Cluster

Lecture 167 Umgebungsvariablen in K8s setzen und verwenden

Lecture 168 Abschlussprojekt: Flask-Redis-App mit K8s deployen (Teil 1)

Lecture 169 Abschlussprojekt: Flask-Redis-App mit K8s deployen (Teil 2)

Lecture 170 Abschlussprojekt: Flask-Redis-App mit K8s deployen (Teil 3)

Lecture 171 Ausblick

Section 11: Schluss

Lecture 172 Schlussworte

An alle, die Docker lernen möchten,An Entwickler, die mit Docker effizienter arbeiten möchten,An Systemadministratoren, die einen Einstieg in Docker und Kubernetes benötigen

Course Information:

Udemy | 400 bad request: {“error”:{“root_cause”:[{“type”:”invalid_index_name_exception”,”reason”:”invalid index name [__english], must not start with ‘_’.”,”index_uuid”:”_na_”,”index”:”__english”}],”type”:”invalid_index_name_exception”,”reason”:”invalid index name [__english], must not start with ‘_’.”,”index_uuid”:”_na_”,”index”:”__english”},”status”:400} | 18h 15m | 13.24 GB
Created by: Jannis Seemann

You Can See More Courses in the Developer >> Greetings from CourseDown.com

New Courses

Scroll to Top