Utilo

Conversor docker run ↔ Compose

Converta comandos docker run em serviços docker-compose / compose.yaml, incluindo portas, variáveis de ambiente, volumes, redes, healthchecks e limites de recursos — ou converta serviços compose de volta para docker run.

O que este conversor faz

Um comando docker run que começou como um experimento rápido tende a crescer: portas, volumes, variáveis de ambiente, uma rede, uma política de reinicialização. Em algum momento pertence a um compose.yaml. Este conversor analisa um ou mais comandos docker run e produz um arquivo Compose limpo com um serviço por comando. Também funciona ao contrário: colar um arquivo Compose e obter os comandos docker run equivalentes, o que é útil para depurar um único serviço ou executá-lo em um host sem Compose. A análise ocorre localmente no seu navegador.

Como usar

  1. Selecione docker run → compose ou compose → docker run.
  2. Coloque os seus comandos, um por linha. As continuações da linha de reversão estão bem, e um sudo líder é ignorado.
  3. Revisar a YAML gerada. Os volumes nomeados e as redes personalizadas são declarados automaticamente no nível superior.
  4. Leia as notas para opções que não têm equivalente Compose.
  5. Copiar a saída, salvá-lo como compose.yaml e executar docker compose up -d.

Opções suportadas

Portas (-p, --expose), ambiente (-e, --env-file), volumes e montagens (-v, --mount, --tmpfs), rede (--network, --network-alias, --ip, --hostname, --add-host, --dns, --link), política de reinicialização, diretório de usuário e de trabalho, ponto de entrada e comando, rótulos, controlador e opções de registro, verificações de estado (--health-*), limites de recursos (--memory, --cpus, --shm-size, --ulimit, --gpus), opções de segurança (--privileged, --cap-add, --cap-drop, --security-opt, --read-only), dispositivos, sysctls, --init, --platform, --pull, -it e muito mais.

Dicas

  • Os nomes dos serviços vêm de --name; se ausentes, o nome da imagem é usado.
  • --rm e -d não têm significado em Compose e são retirados com uma nota.
  • As montagens de ligação relativas no Compose são resolvidas em relação ao arquivo Compose, não ao diretório do shell. Use caminhos de estilo ./data.
  • Os segredos passados com o -e acabam em texto simples. Considere movê-los para um arquivo .env e referenciar ${VAR}.

Perguntas frequentes

Que versão Compose é gerada?

A saída segue a especificação de composição atual usada pelo Docker Compose v2. A chave version: de nível superior obsoleta é omitida.

Posso converter vários contentores ao mesmo tempo?
  • Sim, sim, sim. Coloque vários comandos docker run e cada um se torna um serviço no mesmo arquivo, compartilhando redes e volumes declarados.
Compose → run suporta construção de seções?

build: não tem equivalente docker run, então a ferramenta usa o nome da imagem e adiciona uma nota dizendo para você construir primeiro.

O meu comando foi carregado?
  • Não, não. A conversão é feita inteiramente no seu navegador.

Sim. Todo o processamento acontece diretamente no seu navegador usando JavaScript, Web Workers e APIs da Web. Nada do que você digita, cola ou envia vai para os nossos servidores.

Esta página foi traduzida automaticamente do inglês. Se encontrar um erro, avise-nos.