Kostenloses Tool

Docker Compose als Diagramm

Fügen Sie eine docker-compose.yml ein und sehen Sie Services, Netzwerke, Volumes und Abhängigkeiten als Diagramm. Zum Ausprobieren brauchen Sie kein Konto.

Beispielausgabe

Beispieldiagramm aus einem Docker Compose-Beispiel

Sie haben Kubernetes-Manifeste? Zum Tool für Kubernetes-YAML

So funktioniert es

  1. Compose-Datei einfügen oder ablegen

    Eine docker-compose.yml oder compose.yaml, also dieselbe Datei, die Sie mit docker compose up starten. YAML-Anker und Erweiterungsfelder (x-) sind kein Problem.

  2. Diagramm ansehen

    Services werden zu Karten mit Image, Ports und Replikas. Netzwerke werden zu Rahmen, und benannte Volumes, Secrets und Configs werden mit den Services verbunden, die sie nutzen.

  3. In Archboard öffnen

    Speichern Sie es als neues Diagramm, um es umzuordnen, zu kommentieren, per Link zu teilen oder als SVG und PNG zu exportieren. Für die Registrierung genügt ein Google- oder GitHub-Konto.

Was aus einer Compose-Datei gezeichnet wird

Das Diagramm entsteht aus diesen Schlüsseln Ihrer Datei:

  • services

    Jeder Service als Karte, benannt nach seinem Schlüssel

  • imagebuild

    Das Image oder (bei Services, die aus dem Quellcode gebaut werden) der Build-Kontext

  • ports

    Ports wie 8080:80 oder 80, ohne Host-IP; die lange Schreibweise erscheint als published:target, mit Protokoll, wenn es nicht TCP ist

  • deploy.replicasscale

    Die Anzahl der Replikas aus deploy.replicas oder scale

  • volumes

    Benannte Volumes, verbunden mit den Services, die sie einbinden

  • secretsconfigs

    Secrets und Configs nur mit Namen, verbunden mit den Services, die sie nutzen

  • networks

    Netzwerke als Rahmen; jeder Service liegt im Rahmen seines ersten Netzwerks

  • depends_on

    Verbindungen von einem Service zu den Services, von denen er abhängt

Ohne networks-Schlüssel wird das ganze Projekt als ein Rahmen gezeichnet. Mit Netzwerken steht jeder Service im Rahmen seines ersten Netzwerks und ist mit den Rahmen der weiteren Netzwerke verbunden, denen er beitritt.

Was das Diagramm nicht zeigt

  • Welche Services sich zur Laufzeit gegenseitig aufrufen: depends_on legt die Startreihenfolge fest, und eine Compose-Datei beschreibt, wie Services verknüpft sind, nicht den Live-Traffic
  • Werte von Umgebungsvariablen, Inhalte aus env_file und was in Secrets und Configs steht (nur Namen werden gelesen)
  • Laufende Container, Health-Status, Logs oder Ressourcenauslastung
  • Felder, die per extends geerbt werden (auch von einem Service in derselben Datei), und Services aus Dateien, die über include eingebunden werden: gezeichnet wird nur, was im jeweiligen Service steht

Fragen

Welche Compose-Dateien funktionieren?

Jede docker-compose.yml oder compose.yaml mit einem services-Schlüssel auf oberster Ebene, auch ältere Dateien, die mit einer version-Zeile beginnen. Fügen Sie jeweils eine Datei ein.

Was passiert mit Variablen und .env-Dateien?

Variablen werden nicht ersetzt: Ein Image oder Port mit Variable erscheint genau so, wie er geschrieben ist. Die Werte unter environment und die Dateien aus env_file werden nicht gelesen.

Kann ich eine Override-Datei oder mehrere Dateien einfügen?

Fügen Sie jeweils eine Datei ein. Eine Override-Datei wie docker-compose.override.yml wird für sich gelesen. Fügen Sie die Datei mit den gewünschten Services ein oder führen Sie die Dateien vorher zusammen. Dateien aus include werden nicht nachgeladen, und extends wird nicht aufgelöst. Auch innerhalb derselben Datei wird nur gezeichnet, was im Service selbst steht.

Was passiert, wenn ich das Diagramm in Archboard öffne?

Das angezeigte Diagramm mit Formen, Namen und Verbindungen wird als neues Diagramm in Ihrem Workspace gespeichert. Dort können Sie es umordnen, Notizen ergänzen, teilen oder exportieren. Es ist ein Ausgangspunkt: Spätere Änderungen an Ihrer Compose-Datei aktualisieren das Diagramm nicht.

Ist das Tool kostenlos?

Ja. Zum Einfügen einer Compose-Datei und Ansehen des Diagramms brauchen Sie kein Konto. Zum Öffnen in Archboard genügt ein kostenloses Konto.

In einer Minute ein Canvas öffnen

Melden Sie sich mit Google oder GitHub an. Kostenlos für einen Sitzplatz. Upgrade, wenn das Team dazukommt.