Desarrollador / Docker
Convertidor de docker run a Docker Compose
Convierte comandos docker run en un archivo compose.yaml con puertos, volúmenes, variables de entorno, redes, política de reinicio, comprobaciones de estado, GPU y mucho más, o convierte un servicio de Compose en un comando docker run; las opciones sin equivalente se enumeran.
Convertidor de docker run a Docker Compose: El comando se divide como lo haría un shell, respetando las comillas y los caracteres de escape, y cada opción se asigna a su clave de Compose: -p a ports, -v y --mount a volumes, -e a environment, --restart, --network, --health-cmd a healthcheck, --gpus a una reserva de dispositivos y unas cuarenta opciones más. Los volúmenes y las redes con nombre reciben sus entradas de nivel superior. Varios comandos se convierten en varios servicios dentro de un mismo archivo. Las opciones sin equivalente en Compose se enumeran en lugar de descartarse sin explicación. Funciona al 100 % en tu navegador, sin subir archivos a ningún servidor.
- Categoría
- Herramientas de desarrollo
- Se ejecuta
- En tu navegador
- Coste
- Gratis · sin registro
- Disponibilidad
- Lista para usar
Funciona por completo en tu navegador
compose.yaml
services:
db:
image: postgres:16
container_name: db
environment:
- POSTGRES_PASSWORD=change-me
volumes:
- pgdata:/var/lib/postgresql/data
ports:
- 5432:5432
restart: unless-stopped
volumes:
pgdata:
Después de convertirlo
Ejecuta docker compose config para comprobar el archivo y verlo con los valores predeterminados incluidos; después, ejecuta docker compose up -d para iniciarlo. Fija las versiones de las imágenes, como postgres:16 en lugar de latest, para que un reinicio no actualice la base de datos por sorpresa.
Para leer el archivo en otro formato, conviértelo con YAML a JSON; para las tareas programadas en los contenedores, el explicador de cron interpreta las expresiones de cron.
Volúmenes y datos
Docker gestiona un volumen con nombre, como pgdata, y este sobrevive a docker compose down; una ruta como ./data corresponde a una carpeta del host. Haz una copia de seguridad de los volúmenes con nombre antes de eliminarlos con docker compose down -v, ya que este comando los borra.
Cómo se usa
- Pega uno o varios comandos docker run; puedes usar continuaciones de línea con una barra invertida.
- Revisa el archivo compose.yaml y las opciones que no se hayan podido convertir.
- Cópialo o descárgalo, o cambia la dirección para convertir un archivo de Compose en comandos docker run.
Privacidad y límites
Todo se ejecuta en tu navegador; tus comandos, que pueden contener contraseñas, no se suben.
Herramientas relacionadas
Preguntas frecuentes
¿Por qué usar Compose en lugar de docker run?
Un archivo de Compose registra toda la configuración en un solo lugar: se puede leer, versionar e iniciar con docker compose up, en vez de mantener comandos largos en el historial del shell. También inicia varios contenedores juntos con sus redes y volúmenes.
¿Qué ocurre con --rm y -d?
Compose no tiene --rm: los contenedores se eliminan con docker compose down. -d se indica al ejecutar docker compose up -d, por lo que no forma parte del archivo.
¿Por qué las redes aparecen como externas?
docker run --network usa una red que ya existe, por lo que el archivo convertido hace referencia a ella de la misma forma. Elimina external: true si quieres que Compose cree la red.
¿Debo conservar las contraseñas en el archivo?
Es preferible usar un env_file fuera del control de versiones, o Docker secrets, para las contraseñas y las claves. El convertidor conserva lo que tenía el comando, así que revisa la sección environment antes de confirmarla en el repositorio.
Herramienta gratuita · se ejecuta en tu navegador · sin cuenta