Zum Inhalt springen
ToolMug

Docker Compose in docker run

Fügen Sie eine compose.yaml oder docker-compose.yml ein, um für jeden Dienst einen gleichwertigen docker-run-Befehl zu erhalten – praktisch, um einen Container auf einem Rechner ohne Compose zu starten oder genau zu prüfen, wie ein Dienst gestartet wird.

Läuft in Ihrem Browser – Ihre Eingaben werden nicht hochgeladen

Docker Compose → docker run
Docker Compose
docker run

So funktioniert es

  1. Fügen Sie links die Compose-Datei ein oder klicken Sie auf Beispiel laden.
  2. Rechts erscheint für jeden Dienst ein docker-run-Befehl, in der Reihenfolge der Datei.
  3. Prüfen Sie den gelben Hinweis auf Felder, die nicht umgewandelt wurden (etwa build, deploy oder depends_on), und kopieren Sie dann die Befehle.

Optionen erklärt

Unterstützte Felder
image, container_name, command, entrypoint, ports, volumes (Kurz- und Langform), environment, env_file, networks, network_mode, restart, user, working_dir, labels, logging, ulimits, healthcheck, Ressourcenlimits und mehr.
Nicht umgewandelte Felder
Nur in Compose vorhandene Felder wie build, deploy, depends_on, secrets und configs werden im Hinweis aufgeführt. Ein Dienst ohne image erhält einen Platzhalter-Image-Namen; bauen Sie das Image vorher selbst.
Mehrere Netzwerke
docker run kann mit --network nur einem Netzwerk beitreten; verbinden Sie die anderen anschließend mit docker network connect.

Beispiel

Ein Dienst wie dieser:

services:
  web:
    image: nginx:1.27
    ports:
      - "8080:80"
    volumes:
      - ./html:/usr/share/nginx/html:ro
      - data:/var/cache/nginx
    environment:
      TZ: UTC
    restart: unless-stopped
    depends_on: [db]

wird zu:

docker run -d \
  --name web \
  -p 8080:80 \
  -v ./html:/usr/share/nginx/html:ro \
  -v data:/var/cache/nginx \
  -e TZ=UTC \
  --restart unless-stopped \
  nginx:1.27

depends_on hat in docker run keine Entsprechung und wird daher stattdessen im Hinweis aufgeführt. Starten Sie die Dienste, auf die es sich bezieht, selbst und in der richtigen Reihenfolge. Der relative Pfad ./html wird relativ zu dem Verzeichnis aufgelöst, aus dem Sie den Befehl ausführen. Führen Sie ihn also aus dem Ordner aus, der dieses Verzeichnis enthält.

Häufig gestellte Fragen

Warum enthält jeder Befehl -d?

Compose startet Dienste normalerweise im Hintergrund (docker compose up -d), daher tun es die Befehle auch. Entfernen Sie -d, um die Ausgabe im Vordergrund zu sehen.

Müssen benannte Volumes und Netzwerke vorher existieren?

docker run legt fehlende benannte Volumes automatisch an, aber benutzerdefinierte Netzwerke müssen vorher mit docker network create <Name> erstellt werden.

Wird meine Datei hochgeladen?

Nein. Parsen und Umwandlung laufen in Ihrem Browser.

Datenschutz

Dieses Tool läuft vollständig in Ihrem Browser. Ihre Dateien und Texte werden auf Ihrem Gerät verarbeitet und nie auf unsere Server hochgeladen.

Ähnliche Tools