Ir para o conteúdo
Totalmente local

Gerador de Dockerfile

Crie um Dockerfile pronto para produção para a sua linguagem, com compilações multi-etapa e padrões sensatos.

Saída

Gerador de Dockerfile

Escolha uma linguagem e esta ferramenta monta um Dockerfile à sua volta — a imagem base, a instalação de dependências e o comando que inicia a aplicação — em vez de começar a partir de um ficheiro em branco ou copiar um de um projecto antigo que pode já não se adequar. Node.js, Python, Go, PHP, Java e sites estáticos (servidos com nginx) estão todos cobertos, cada um com a imagem base e ordem de camadas que essa stack normalmente espera.

As opções cobrem o que muda entre projectos. Escolha o gestor de pacotes — npm, Yarn ou pnpm para Node; pip ou Poetry para Python — para que a camada de instalação copie o manifesto e o ficheiro de bloqueio corretos antes do resto da fonte, impedindo a cache de build do Docker de reinstalar dependências em cada mudança de código. Active a construção multi-etapa para instalar ou compilar numa imagem e copiar apenas a saída compilada para uma imagem de runtime enxuta, enviando sem compilador ou dependências de desenvolvimento. Um utilizador não-raiz, um HEALTHCHECK, a porta exposta, o comando de início e qualquer variável de ambiente são todos definidos a partir do painel, e o .dockerignore mantém .git e node_modules fora do contexto de construção.

Cada camada obtém um breve comentário explicando o que faz e por quê — documentação tanto quanto uma forma de verificação de sanidade do ficheiro antes de a comprometer, e fácil de desligar quando conhece a forma de cor. A saída actualiza-se enquanto altera qualquer opção, portanto comparar uma construção de uma única etapa contra uma multi-etapa não requer regeneração manual.

Nada do que escreve aqui sai do seu navegador — o Dockerfile é montado inteiramente lado do cliente em JavaScript. Copie o resultado, transfira-o como um ficheiro .txt para renomear localmente, ou envie-o para a entrada de outra ferramenta para continuar a trabalhar nele.

FAQ

O Dockerfile gerado realmente constrói?
Segue a disposição padrão para cada linguagem — imagem base, instalação de dependências, cópia de fonte, comando de início — mas ainda espera que o seu projecto tenha os ficheiros usuais (package.json, requirements.txt, go.mod, composer.json ou pom.xml). Verifique os caminhos e comandos contra o seu projecto antes de implementar.
Que muda a opção de construção multi-etapa?
Com ele ligado, um primeiro stage "build" instala dependências (e compila, para Go e Java) e um segundo stage copia apenas a aplicação acabada numa imagem nova e mínima — mais pequena e com uma superfície de ataque muito menor do que uma imagem que mantém as suas ferramentas de construção à volta.
Por que executar como utilizador não-raiz?
Um processo executado como raiz dentro de um contentor que fica comprometido tem mais capacidade de afectar o anfitrião. A opção não-raiz adiciona um utilizador dedicado (ou reutiliza o integrado da imagem, como "node") e muda para ele antes do contentor iniciar a sua aplicação.
Que entra no campo variáveis de ambiente?
Uma lista separada por vírgulas ou quebras de linha de pares CHAVE=valor, por exemplo NODE_ENV=production, PORT=3000. Cada um torna-se a sua própria instrução ENV. Deixe em branco para saltar completamente a secção.
A minha informação de projecto é carregada em algum lado?
Não. O Dockerfile é montado inteiramente no seu navegador a partir das opções que escolhe — nada sobre o seu projecto é enviado para um servidor.