0Pricing
Docker & DevOps Fundamentals · Lektion

Services in Swarm bereitstellen

Stellen Sie containerisierte Anwendungen als Services in Ihrem Swarm-Cluster bereit und skalieren Sie sie, während Sie ihren Lebenszyklus verwalten.

Services in Swarm bereitstellen ist eine kostenlose Docker & DevOps Fundamentals-Lektion auf CoddyKit. Dies ist Lektion 3 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 Docker & DevOps Fundamentals-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Docker & DevOps Fundamentals-Kurs umfasst insgesamt 4 Lektionen.

Was ist ein Docker-Swarm-Dienst

In Docker Swarm ist ein Dienst die Definition dafür, wie Sie eine containerisierte Anwendung in Ihrem Cluster ausführen möchten.

Anstatt einzelne Container auszuführen, definieren Sie einen Dienst und teilen Swarm mit: "Ich möchte X Instanzen dieses Images auf diesen Ports und mit diesen Einstellungen ausführen."

Swarm sorgt anschließend dafür, dass der gewünschte Zustand erhalten bleibt, und startet Container bei einem Ausfall automatisch neu.

Services in Swarm bereitstellen — Illustration 1

Dienste und Container im Vergleich

Stellen Sie es sich folgendermaßen vor:

  • Ein Container ist eine einzelne Instanz einer Anwendung.
  • Ein Dienst ist ein Bauplan zum Ausführen eines oder mehrerer identischer Container (genannt Tasks) in Ihrem Swarm.

Dienste bieten hohe Verfügbarkeit und Skalierbarkeit, indem sie Tasks verteilen und Ausfälle automatisch behandeln.

Ihren ersten Dienst bereitstellen

Mit dem Befehl docker service create stellen Sie Anwendungen als Dienste in Ihrem Swarm-Cluster bereit. Erstellen wir einen einfachen Nginx-Webserver-Dienst.

Führen Sie dieses Beispiel aus:

docker service create \
  --name my-web-app \
  -p 80:80 \
  --replicas 1 \
  nginx

Die Erstellung eines Dienstes verstehen

Sehen wir uns den gerade verwendeten Befehl im Detail an:

  • --name my-web-app: Gibt Ihrem Dienst einen einprägsamen Namen.
  • -p 80:80: Ordnet Port 80 auf den Swarm-Knoten Port 80 im Container zu.
  • --replicas 1: Teilt Swarm mit, dass eine laufende Instanz (ein Task) dieses Dienstes aufrechterhalten werden soll.
  • nginx: Gibt das Docker-Image an, das für die Tasks des Dienstes verwendet wird.

Ihre Dienste überprüfen

Nach der Erstellung eines Dienstes sollten Sie seinen Status und seine laufenden Tasks überprüfen. Verwenden Sie dazu diese Befehle:

  • docker service ls: Listet alle Dienste in Ihrem Swarm auf.
  • docker service ps <service_name>: Zeigt die einzelnen Tasks (Container) an, die einem Dienst zugeordnet sind.
docker service ls
docker service ps my-web-app

Ihren Dienst skalieren

Einer der wichtigsten Vorteile von Docker Swarm ist die einfache Skalierung. Sie können die Anzahl der laufenden Instanzen (Replikate) Ihres Dienstes mit einem einzigen Befehl erhöhen.

Skalieren wir my-web-app auf drei Replikate:

docker service scale my-web-app=3

Ihren Dienst herunterskalieren

Ebenso einfach können Sie Ihren Dienst herunterskalieren, um die Ressourcennutzung zu reduzieren oder den Datenverkehr zu steuern. Swarm beendet die überzähligen Container kontrolliert, während die übrigen weiterlaufen.

Skalieren wir my-web-app wieder auf ein Replikat herunter:

docker service scale my-web-app=1

Einen Dienst aktualisieren

Wenn Sie eine neue Version Ihrer Anwendung bereitstellen oder Diensteinstellungen ändern müssen, führt docker service update ein Rolling Update durch. Swarm aktualisiert die Tasks nacheinander, sodass Ihre Anwendung verfügbar bleibt.

Aktualisieren wir unseren Nginx-Dienst auf eine bestimmte Version:

docker service update --image nginx:1.25 my-web-app

Einen Dienst entfernen

Wenn ein Dienst nicht mehr benötigt wird, können Sie ihn aus Ihrem Swarm entfernen. Dadurch werden alle zugehörigen Tasks beendet und die Dienstdefinition aus dem Cluster gelöscht.

So entfernen Sie unseren Beispiel-Webdienst:

docker service rm my-web-app

Quiz zur Dienstverwaltung

Sie haben einen Dienst namens my-backend, der mit 3 Replikaten und dem Image my-backend:v1 ausgeführt wird. Sie müssen ihn so aktualisieren, dass er das neue Image my-backend:v2 verwendet, und außerdem die Anzahl der Replikate auf 5 erhöhen.

Rückblick: Swarm-Dienste

Sehr gut! Sie haben die Grundlagen zum Bereitstellen und Verwalten von Anwendungen als Dienste in Docker Swarm gelernt.

  • Dienste definieren den gewünschten Zustand Ihrer containerisierten Anwendungen.
  • Sie haben gelernt, Dienste mit docker service create zu erstellen.
  • Wir haben das Überprüfen, Skalieren (docker service scale) und Aktualisieren (docker service update) von Diensten behandelt.
  • Schließlich können Sie Dienste mit docker service rm entfernen.

Dienste sind grundlegend für den Aufbau skalierbarer und ausfallsicherer Anwendungen in einem Swarm-Cluster!

Häufig gestellte Fragen

Ist die Lektion „Services in Swarm bereitstellen“ kostenlos?

Ja — der vollständige Text von „Services in Swarm bereitstellen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Docker & DevOps Fundamentals-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Docker & DevOps Fundamentals-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Services in Swarm bereitstellen“?

Stellen Sie containerisierte Anwendungen als Services in Ihrem Swarm-Cluster bereit und skalieren Sie sie, während Sie ihren Lebenszyklus verwalten. Du übst Docker & DevOps Fundamentals 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 Docker & DevOps Fundamentals zu starten?

Keine Vorkenntnisse erforderlich. Docker & DevOps Fundamentals 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 3 von 4.

Wie lange dauert die Lektion „Services in Swarm bereitstellen“?

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 Docker & DevOps Fundamentals-Lektion Code schreiben und ausführen?

Ja. Jede Docker & DevOps Fundamentals-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

  1. Einführung in Docker Swarm
  2. Einen Swarm-Cluster einrichten
  3. Services in Swarm bereitstellen
  4. Skalierung und Rolling Updates in Swarm
← Zurück zu Docker & DevOps Fundamentals