So funktioniert's (Überblick)
Diese Seite ist die Brücke zwischen Was ist MultiDocker? und den tieferen Konzepten. Sie begleitet ein Projekt von der Registrierung bis zum geöffneten Browser-Tab und erklärt, was bei jedem Schritt passiert.
Der End-to-End-Ablauf
Abschnitt betitelt „Der End-to-End-Ablauf“mdocker init ~/Projects/aurora └─ detect profile (image/service heuristic) └─ write ~/.config/multi-docker/overrides/aurora.override.yml └─ record project in registry.json
mdocker up aurora └─ port-conflict pre-flight (remap to a free port if needed) └─ docker compose -p aurora up -d COMPOSE_FILE = <project>/docker-compose.yml : aurora.override.yml └─ containers join the multi-docker-edge network └─ Traefik picks up the labels and starts routing
mdocker open aurora └─ open https://aurora.coding9.testWas liest was
Abschnitt betitelt „Was liest was“mdocker (any verb) ──► docker compose -p <name> (COMPOSE_FILE chain) │ ├─► engine/detect.sh pick a profile ├─► engine/render.sh ──► engine/profiles/*.yml generate the override └─► scripts/*.sh TLS · DNS · network · doctor
edge/compose.yml ──► Traefik ──► your labelled project containers (provider = docker, via the docker-socket-proxy)Schritt für Schritt
Abschnitt betitelt „Schritt für Schritt“1. Registrierung (init)
Abschnitt betitelt „1. Registrierung (init)“mdocker init <path> inspiziert die Compose-Datei des Projekts, führt die
Profil-Heuristik (engine/detect.sh) aus, um ein passendes Template zu
wählen, und erzeugt dann das Override mit engine/render.sh. Das Projekt wird in
registry.json festgehalten — der Single Source of Truth für Pfad, Profil,
Hostnamen und persistierte Port-Overrides.
2. Start (up)
Abschnitt betitelt „2. Start (up)“mdocker up <name> führt zuerst einen Port-Konflikt-Preflight aus: Wenn ein
Host-Port, den dein Projekt veröffentlicht, bereits von einem fremden Prozess
belegt ist, findet MultiDocker einen freien Ersatz und persistiert ihn. Danach
ruft es docker compose mit der COMPOSE_FILE-Kette auf, sodass das Override
über dein unangetastetes Original gelegt wird. Die Container treten dem
multi-docker-edge-Netz bei und Traefik beginnt sofort, anhand der Labels im
Override zu ihnen zu routen.
3. Öffnen (open)
Abschnitt betitelt „3. Öffnen (open)“Weil dnsmasq *.<base-domain> mit 127.0.0.1 beantwortet und der
macOS-Resolver diese Domain dorthin weiterleitet, löst
https://aurora.coding9.test zu Traefik auf. Das mkcert-Wildcard-Zertifikat
macht die Verbindung vertrauenswürdig, sodass der Browser ein grünes
Schloss-Symbol zeigt.
Das Override auf einen Blick
Abschnitt betitelt „Das Override auf einen Blick“Das generierte Override entfernt Host-Ports und fügt Routing-Labels hinzu. Ein vereinfachtes Beispiel:
services: proxy: ports: !reset [] # remove host port bindings, do not merge them networks: [default, edge] labels: - "traefik.enable=true" - "traefik.http.routers.aurora.rule=Host(`aurora.coding9.test`)" - "traefik.http.routers.aurora.tls=true"
networks: edge: name: multi-docker-edge external: trueDu willst die Details? Lies Die Override-Engine, Der Edge-Stack und DNS & TLS.
Cookie-Einstellungen
Statistik-Werkzeuge setzen wir nur ein, wenn du zustimmst. Die notwendige Speicherung hält die Seite funktionsfähig; alles andere bleibt aus, bis du entscheidest.
Speichert deine Entscheidung aus diesem Dialog in deinem Browser (localStorage). Kein Cookie, keine Weitergabe an Dritte.
Google Analytics 4 über den Google Tag Manager, um die Nutzung der Seite zu messen. Wird erst nach deiner Einwilligung geladen.