Saltar al contenido
ToolMug

De Docker Compose a docker run

Pega un compose.yaml o docker-compose.yml para obtener un comando docker run equivalente para cada servicio — útil para arrancar un contenedor en una máquina sin Compose, o para comprobar exactamente cómo se inicia un servicio.

Funciona en tu navegador: nada de lo que introduces se sube

Docker Compose → docker run
Docker Compose
docker run

Cómo se usa

  1. Pega el archivo Compose a la izquierda, o haz clic en «Cargar ejemplo».
  2. A la derecha aparece un comando docker run para cada servicio, en el orden del archivo.
  3. Revisa la nota en amarillo con los campos que no se convirtieron (como build, deploy o depends_on) y copia los comandos.

Opciones explicadas

Campos admitidos
image, container_name, command, entrypoint, ports, volumes (sintaxis corta y larga), environment, env_file, networks, network_mode, restart, user, working_dir, labels, logging, ulimits, healthcheck, límites de recursos y más.
Campos no convertidos
Los campos exclusivos de Compose como build, deploy, depends_on, secrets y configs se listan en la nota. Un servicio sin image recibe un nombre de imagen de relleno; constrúyela tú antes.
Varias redes
docker run solo puede unirse a una red con --network; conecta las demás después con docker network connect.

Ejemplo

Un servicio como este:

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]

se convierte en:

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 no tiene equivalente en docker run, así que aparece en la nota. Inicia tú mismo, en el orden correcto, los servicios a los que se refiere. La ruta relativa ./html se resuelve respecto al directorio desde el que ejecutas el comando, así que ejecútalo desde la carpeta que contiene ese directorio.

Preguntas frecuentes

¿Por qué todos los comandos incluyen -d?

Compose normalmente ejecuta los servicios en segundo plano (docker compose up -d), así que los comandos también lo hacen. Quita -d para ver la salida en primer plano.

¿Los volúmenes y redes con nombre deben existir antes?

docker run crea automáticamente los volúmenes con nombre que faltan, pero las redes personalizadas deben crearse antes con docker network create <nombre>.

¿Se sube mi archivo?

No. El análisis y la conversión se ejecutan en tu navegador.

Privacidad

Esta herramienta funciona por completo en tu navegador. Tus archivos y textos se procesan en tu dispositivo y nunca se suben a nuestros servidores.

Herramientas relacionadas