Desenvolvedor / Docker

Conversor de docker run para Docker Compose

Converta comandos docker run em um arquivo compose.yaml com portas, volumes, variáveis de ambiente, redes, política de reinicialização, verificações de integridade, GPUs e muito mais, ou converta um serviço Compose novamente em comandos docker run; as opções sem equivalente são listadas.

Conversor de docker run para Docker Compose: O comando é dividido como seria por um shell, respeitando aspas e escapes, e cada opção é mapeada para sua chave do Compose: -p para ports, -v e --mount para volumes, -e para environment, --restart, --network, --health-cmd para healthcheck, --gpus para uma reserva de dispositivos e cerca de outras quarenta opções. Volumes e redes nomeados recebem suas entradas de nível superior. Vários comandos se tornam vários serviços em um único arquivo. As opções sem equivalente no Compose são listadas, em vez de serem descartadas sem aviso. Roda 100% localmente no seu navegador, sem enviar nenhum arquivo para o servidor.

Execuções
No seu navegador
Custo
Grátis · sem cadastro
Disponibilidade
Pronto para usar
docker run para ComposeProcessamento local

Roda inteiramente no seu 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:

Depois da conversão

Execute docker compose config para verificar o arquivo e vê-lo com os valores padrão preenchidos; depois, execute docker compose up -d para iniciá-lo. Fixe as versões das imagens, como postgres:16 em vez de latest, para que uma reinicialização não atualize o banco de dados de surpresa.

Para ler o arquivo em outro formato, converta-o com YAML para JSON; para tarefas agendadas nos contêineres, o explicador de cron interpreta expressões cron.

Volumes e dados

Um volume nomeado, como pgdata, é gerenciado pelo Docker e permanece após docker compose down; um caminho como ./data é uma pasta no host. Faça backup dos volumes nomeados antes de removê-los com docker compose down -v, que os exclui.

Como usar

  1. Cole um ou mais comandos docker run; continuações de linha com uma barra invertida são aceitas.
  2. Leia o compose.yaml e veja as opções que não puderam ser convertidas.
  3. Copie ou baixe o resultado, ou mude a direção para transformar um arquivo Compose em comandos docker run.

Privacidade e limitações

Tudo é executado no seu navegador; seus comandos, que podem conter senhas, não são enviados para servidores.

Ferramentas relacionadas

Perguntas frequentes

Por que usar Compose em vez de docker run?

Um arquivo Compose registra toda a configuração em um só lugar, onde pode ser lido, versionado e iniciado com docker compose up, em vez de manter comandos longos no histórico do shell. Ele também inicia vários contêineres juntos, com suas redes e volumes.

O que acontece com --rm e -d?

O Compose não tem --rm: os contêineres são removidos com docker compose down. O modo -d é escolhido quando você executa docker compose up -d, portanto não faz parte do arquivo.

Por que as redes são marcadas como externas?

docker run --network usa uma rede que já existe, portanto o arquivo convertido faz referência a ela da mesma forma. Remova external: true se quiser que o Compose crie a rede por conta própria.

Devo manter senhas no arquivo?

Prefira um env_file mantido fora do controle de versão ou use Docker secrets para senhas e chaves. O conversor mantém o conteúdo do comando, portanto revise a seção environment antes de fazer o commit.

Ferramenta grátis · no seu navegador execuções · não precisa de conta