Gerador de Docker Compose
Crie arquivos docker-compose.yml com um editor visual
Serviços Serviços: 0
As versões 3.5-3.9 mantêm o campo version para consumidores antigos. O Docker Compose atual usa a especificação do Compose.
Adicionar rapidamente um modelo de serviço
Nenhum serviço adicionado ainda. Escolha um modelo ou adicione um serviço vazio.
Toda a configuração permanece neste dispositivo. O YAML é atualizado conforme você edita.
docker-compose.yml gerado
Sobre o Gerador de Docker Compose
O Gerador de Docker Compose é uma ferramenta online gratuita que ajuda desenvolvedores a montar arquivos docker-compose.yml de forma visual, sem escrever a sintaxe YAML à mão. Seja para configurar um ambiente de desenvolvimento local ou uma stack de produção com vários serviços, o gerador agiliza o processo com modelos prontos e um editor visual intuitivo para serviços, portas, volumes e variáveis de ambiente.
Docker Compose é uma ferramenta para definir e executar aplicações Docker com vários contêineres. Com um único arquivo de configuração YAML, você orquestra bancos de dados, caches, servidores web e serviços da aplicação em conjunto. Nosso gerador elimina erros de sintaxe e acelera a configuração, para você se concentrar em construir a aplicação em vez de depurar problemas de indentação.
A ferramenta oferece modelos de serviços populares, como PostgreSQL, MySQL, Redis, MongoDB, Nginx e Node.js. Você também pode criar serviços totalmente personalizados do zero, configurar dependências entre serviços com depends_on, definir redes personalizadas e escolher entre várias versões do Docker Compose, de 3.5 a 3.9.
Principais recursos
- Modelos prontos para os serviços PostgreSQL, MySQL, Redis, MongoDB, Nginx e Node.js
- Editor visual para configurar portas, variáveis de ambiente e montagem de volumes
- Gerenciamento de dependências entre serviços com diretivas depends_on
- Configuração de redes personalizadas com driver bridge definido automaticamente
- Detecção e declaração automáticas de volumes nomeados
- Várias opções de política de reinício, incluindo always, unless-stopped e on-failure
- Seletor de versão do Docker Compose com suporte às versões 3.5 a 3.9
- Copiar para a área de transferência com um clique ou baixar como arquivo docker-compose.yml
- Prévia do YAML em tempo real, atualizada conforme você configura os serviços
- Suporte à adição de serviços personalizados ilimitados com modelos vazios
Como usar o Gerador de Docker Compose
- Selecione um modelo: clique em um dos botões de adição rápida (PostgreSQL, MySQL, Redis, MongoDB, Nginx ou Node.js) para adicionar um serviço pré-configurado, ou clique em “Serviço vazio” para começar do zero.
- Configure o serviço: expanda o cartão do serviço e edite o nome do serviço, a imagem Docker, o nome do contêiner, as portas, as variáveis de ambiente, os volumes e a política de reinício.
- Defina as dependências: se você tiver vários serviços, use as caixas de seleção “Depende de” para definir a ordem de inicialização entre eles.
- Adicione redes: informe nomes de rede separados por vírgula para agrupar serviços em redes Docker isoladas.
- Visualize e exporte: confira o YAML gerado no painel de prévia ao vivo e depois copie para a área de transferência ou baixe como docker-compose.yml.
- Faça o deploy da stack: coloque o arquivo na raiz do projeto e execute docker compose up -d para iniciar todos os serviços.
Casos de uso
- Ambientes de desenvolvimento local: suba bancos de dados, caches e serviços com um único comando, em vez de instalar cada dependência manualmente.
- Arquitetura de microsserviços: defina e orquestre vários serviços interconectados, com rede e gerenciamento de dependências adequados.
- Pipelines de CI/CD: gere arquivos docker-compose consistentes para executar testes de integração em pipelines de build automatizados.
- Protótipos e demonstrações: monte rapidamente aplicações full-stack com serviços de back-end, bancos de dados e proxies reversos para apresentações.
- Integração de equipes: compartilhe um docker-compose.yml padronizado para que novos desenvolvedores configurem o ambiente em minutos.
- Gerenciamento de bancos de dados: configure instâncias de PostgreSQL, MySQL, MongoDB ou Redis com volumes persistentes para armazenar dados localmente.
- Configuração de proxy reverso: configure o Nginx como proxy reverso na frente dos serviços da sua aplicação, com o mapeamento de portas correto.
- Aprendizado de Docker: experimente a sintaxe e as configurações do Docker Compose por meio de uma interface visual interativa.
Perguntas frequentes
Esta ferramenta é gratuita?
Sim, o Gerador de Docker Compose é totalmente gratuito. Não há limites de uso, não é preciso se cadastrar e nenhum recurso premium fica bloqueado por pagamento.
Meus dados estão seguros?
Com certeza. Toda a configuração é gerada inteiramente no seu navegador. Nenhum dado é enviado a servidor algum, e nada é armazenado nem registrado em log. Os nomes dos seus serviços, as variáveis de ambiente e as demais configurações permanecem totalmente privados.
Qual versão do Docker Compose devo usar?
O Docker Compose atual segue a Compose Specification e ignora o campo version de nível superior. Use o formato atual, sem version, em novos projetos Compose; escolha 3.5-3.9 ao exportar para um consumidor mais antigo que espera esse campo.
Posso adicionar serviços personalizados que não estão nos modelos?
Sim. Clique no botão “Serviço vazio” para criar um serviço em branco e depois informe manualmente o nome da imagem, as portas, as variáveis de ambiente e as demais opções de configuração de qualquer imagem Docker disponível no Docker Hub ou no seu registro privado.
Qual é a diferença entre volumes nomeados e bind mounts?
Volumes nomeados (como postgres_data) são gerenciados pelo Docker e mantêm os dados entre reinicializações do contêiner. Bind mounts (que começam com ./ ou /) mapeiam um diretório específico do host para dentro do contêiner. Volumes nomeados são recomendados para armazenar bancos de dados, enquanto bind mounts são úteis para compartilhar código-fonte durante o desenvolvimento.
Como lidar com variáveis de ambiente sensíveis?
Em produção, evite deixar segredos fixos no docker-compose.yml. Em vez disso, use um arquivo .env junto ao arquivo compose ou use Docker secrets em implantações swarm. O arquivo gerado é um ponto de partida que você deve ajustar com um gerenciamento de segredos adequado.
Dicas e boas práticas
- Use volumes nomeados para bancos de dados: volumes nomeados mantêm os dados entre recriações de contêineres, evitando perda de dados quando você recria os contêineres.
- Fixe as versões das imagens: especifique sempre tags exatas de imagem (por exemplo, postgres:16-alpine) em vez de usar latest, para garantir builds reproduzíveis.
- Aproveite o depends_on: defina dependências entre serviços para que os contêineres iniciem na ordem correta, mas adicione também healthchecks para verificar de fato se o serviço está pronto.
- Guarde segredos em arquivos .env: armazene valores sensíveis, como senhas e chaves de API, em um arquivo .env e adicione-o ao .gitignore para evitar commits acidentais.
- Use redes personalizadas: isole grupos de serviços em redes separadas para mais segurança e para evitar comunicação indesejada entre serviços.
- Escolha a política de reinício certa: use “unless-stopped” para serviços que devem sobreviver a reinicializações do host e “on-failure” para serviços que só devem reiniciar após falhas.