Sviluppatore / Docker

Convertitore da docker run a Docker Compose

Converti i comandi docker run in un file compose.yaml con porte, volumi, variabili d'ambiente, reti, policy di riavvio, health check, GPU e altro, oppure riconverti un servizio Compose in comandi docker run; le opzioni senza equivalente vengono elencate.

Convertitore da docker run a Docker Compose: Il comando viene suddiviso come farebbe una shell, gestendo virgolette ed escape, e ogni opzione viene associata alla relativa chiave Compose: -p a ports, -v e --mount a volumes, -e a environment, --restart, --network, --health-cmd a healthcheck, --gpus a una prenotazione di dispositivi e circa altre quaranta. I volumi e le reti con nome ricevono le relative voci di primo livello. Più comandi diventano più servizi nello stesso file. Le opzioni senza equivalente in Compose vengono elencate invece di essere ignorate senza avviso. Funziona al 100% localmente nel browser, senza caricare file sul server.

Esecuzioni
Nel browser
Costo
Gratuito · senza registrazione
Disponibilità
Pronto all'uso
Da docker run a ComposeElaborazione locale

Funziona interamente nel browser

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:

Dopo la conversione

Esegui docker compose config per controllare il file e visualizzarlo con i valori predefiniti compilati, quindi docker compose up -d per avviarlo. Fissa le versioni delle immagini, ad esempio postgres:16 invece di latest, così un riavvio non aggiornerà il database in modo imprevisto.

Per leggere il file in un altro formato, convertilo con YAML in JSON; per i processi pianificati nei container, la guida a cron interpreta le espressioni cron.

Volumi e dati

Un volume denominato, come pgdata, è gestito da Docker e sopravvive a docker compose down; un percorso come ./data è una cartella sull'host. Esegui il backup dei volumi denominati prima di rimuoverli con docker compose down -v, che li elimina.

Come usarlo

  1. Incolla uno o più comandi docker run; puoi usare anche i ritorni a capo con una barra rovesciata.
  2. Controlla il file compose.yaml e le eventuali opzioni che non è stato possibile convertire.
  3. Copialo o scaricalo, oppure cambia direzione per trasformare un file Compose in comandi docker run.

Privacy e limitazioni

Tutto funziona nel browser; i tuoi comandi, che potrebbero contenere password, non vengono caricati.

Strumenti correlati

Domande frequenti

Perché usare Compose invece di docker run?

Un file Compose raccoglie tutta la configurazione in un unico punto, dove può essere letto, versionato e avviato con docker compose up, invece di conservare comandi lunghi nella cronologia della shell. Inoltre, avvia più container insieme alle relative reti e ai volumi.

Che cosa succede con --rm e -d?

Compose non supporta --rm: i container vengono rimossi con docker compose down. -d viene scelto quando esegui docker compose up -d, quindi non fa parte del file.

Perché le reti sono contrassegnate come esterne?

docker run --network usa una rete già esistente, quindi il file convertito vi fa riferimento nello stesso modo. Rimuovi external: true se vuoi che sia Compose a creare la rete.

Devo lasciare le password nel file?

Per password e chiavi, preferisci un env_file escluso dal controllo versione oppure i Docker secrets. Il convertitore conserva ciò che conteneva il comando, quindi controlla la sezione environment prima di eseguire il commit.

Strumento gratuito · nel browser esecuzioni · senza account