Skip to main content
CheckTown
Ferramentas dev

Docker Run para Compose: Converta comandos em YAML

Publicado 5 min de leitura
Neste artigo

Porquê Converter docker run para Docker Compose

Os contentores Docker começam frequentemente como comandos docker run rápidos durante o desenvolvimento. Testa-se um parâmetro aqui, adiciona-se um volume ali, e em breve o comando estende-se por múltiplas linhas com dezenas de opções. Estes comandos longos são difíceis de ler, fáceis de escrever incorretamente e impossíveis de controlar eficazmente com controlo de versões. O Docker Compose resolve isto ao expressar a mesma configuração num ficheiro YAML estruturado que é legível, reprodutível e fácil de partilhar com a equipa.

Converter de docker run para um ficheiro Compose também desbloqueia a orquestração multi-contentor. Uma vez que os serviços estejam definidos num ficheiro compose, pode iniciar pilhas de aplicações inteiras com um único comando, definir dependências entre serviços, configurar a rede automaticamente e gerir volumes de forma declarativa. É a forma padrão de definir ambientes de desenvolvimento local e implementações de produção simples.

Como Utilizar o Conversor de Docker Run para Compose

O conversor do CheckTown analisa o seu comando docker run e gera um ficheiro docker-compose.yml válido instantaneamente.

  • Cole o seu comando docker run no campo de entrada — a ferramenta aceita comandos de uma ou múltiplas linhas com continuações de barra invertida
  • O conversor analisa instantaneamente todos os parâmetros, incluindo portas, volumes, variáveis de ambiente, políticas de reinício, redes e mais
  • Reveja o resultado YAML gerado — cada parâmetro do seu comando original é mapeado na chave Compose correspondente
  • Copie o resultado e guarde-o como docker-compose.yml na raiz do seu projeto, depois execute docker compose up

Experimente gratuitamente — sem cadastro

Converter docker run para Compose →

Melhores Práticas para Ficheiros Docker Compose

Um ficheiro Compose bem estruturado torna a sua infraestrutura transparente e fácil de manter. Siga estas orientações para manter as configurações limpas.

  • Fixe sempre as tags de imagem em versões específicas em vez de usar latest — isto garante builds reprodutíveis em todos os ambientes
  • Utilize volumes nomeados para dados persistentes em vez de bind mounts sempre que possível — os volumes nomeados são geridos pelo Docker e portáteis entre hosts
  • Defina uma política de reinício (como unless-stopped ou on-failure) para que os seus contentores recuperem automaticamente após falhas ou reinícios do host

Perguntas Frequentes

O conversor suporta todos os parâmetros do docker run?

O conversor trata dos parâmetros mais utilizados, incluindo mapeamento de portas (-p), volumes (-v), variáveis de ambiente (-e), políticas de reinício, modo de rede, nomes de contentores, diretório de trabalho, entrypoint, substituições de comandos, labels e limites de recursos. Parâmetros raramente usados ou exclusivos do runtime Docker podem necessitar de ajuste manual.

Posso converter múltiplos comandos docker run num único ficheiro Compose?

Sim. Converta cada comando docker run separadamente e depois combine as definições de serviço num único ficheiro docker-compose.yml sob a chave services. Cada contentor torna-se o seu próprio serviço nomeado, e pode definir redes e volumes partilhados no nível superior do ficheiro.

Que versão de ficheiro Compose o resultado utiliza?

O resultado gera um ficheiro Compose moderno compatível com Docker Compose V2. A chave version é omitida porque o Docker Compose V2 já não a exige — a especificação é inferida automaticamente. Funciona com Docker Desktop e instalações autónomas do CLI docker compose.

Ferramentas relacionadas