25 de outubro de 2026
Imagens Docker personalizadas
Enterprise 28, Enterprise 30 e Enterprise 32 agora podem criar uma imagem a partir do próprioDockerfile e rodar aplicações a partir dela. Use para outra linguagem ou versão, pacotes de sistema, seu próprio processo de inicialização ou apps prontos.- Crie uma imagem a partir de um ZIP de até 100 MB ou de um repositório do GitHub. A branch é opcional: sem ela, usa-se a branch padrão do repositório. Um repositório das suas instalações do GitHub App fica vinculado, então cada push reconstrói a imagem; um repositório público fora delas é construído uma vez, sem vínculo. No painel, Novo projeto também tem a opção Usar imagem Docker para criar um app a partir de uma imagem que você já tem. O projeto precisa de um arquivo chamado exatamente
Dockerfilena raiz. A imagem é construída em um ambiente de build isolado, com limite de 26 minutos, e o resultado pode ter até 10 GB. Cada conta pode ter até 20 imagens. - Verifique antes de construir. O painel analisa o seu
Dockerfileantes de o build começar: instruções que enfraqueceriam o isolamento do build são recusadas, e erros comuns, como arquivos.envno projeto, são apontados para você corrigir. Arquivos.env*nunca entram na imagem, e o seuDockerfilenunca é reescrito. Veja o que é recusado e o que gera aviso. - Crie apps a partir da imagem. Vários apps podem compartilhar uma imagem, cada um com as próprias variáveis. Para um app web, a porta é o primeiro
EXPOSEdoDockerfile, ou 80, e ela chega ao seu app comoPORT. Um app criado sem web pode ser publicado depois, informando a porta. - Atualize a imagem enviando um novo contexto, por um commit sobre o contexto atual, ou por um push para uma branch vinculada do GitHub (vincule um repositório das suas instalações do GitHub App; a branch é opcional). A GitHub Action aceita
image-idpara reconstruir uma imagem. Reconstruir nunca reinicia as suas aplicações: cada app passa para a nova versão quando você o reinicia ou faz deploy. - Versões e rollback. Cada build bem-sucedido é uma versão. Os apps mantêm 30 releases por 30 dias, e um rollback inicia uma versão que já foi construída.
- Snapshots desses apps guardam os dados de
/appe a versão da imagem. Ao restaurar, você também pode voltar a essa versão, se ela ainda existir. - Renomeie e descreva. Dê uma descrição à imagem (até 128 caracteres) ao criá-la, e renomeie-a ou altere a descrição depois, no painel, na API, nos SDKs, na CLI, no servidor MCP ou na extensão do VS Code. Nada é reconstruído e os seus apps continuam rodando.
- Excluir uma imagem exclui todas as aplicações criadas a partir dela, depois que você digitar o nome da imagem.
- Na extensão do VS Code. Uma nova visualização de Docker images lista as suas imagens e os apps delas. A partir dela, você pode criar uma imagem a partir de uma pasta ou de um repositório do GitHub, reconstruí-la, acompanhar o log do build, ver as versões, vincular uma branch do GitHub, excluí-la e criar um app a partir dela. Fazer deploy, publicar e restaurar snapshots de apps de imagem também funcionam pela extensão, e um novo app a partir de uma pasta com
Dockerfileoferece criar uma imagem.
/v1/images (incluindo PATCH /v1/images/{image_id} para renomear e descrever) e POST /v1/apps/image, com os novos escopos de chave de API images:read, images:write e images:delete (excluir uma imagem que tenha apps também exige apps:delete, e enviar arquivos para um app que roda uma imagem também exige images:write), e os novos códigos de erro PLAN_DOES_NOT_SUPPORT_CUSTOM_IMAGES, MAX_IMAGES_REACHED, IMAGE_NOT_FOUND, IMAGE_VERSION_NOT_FOUND, IMAGE_BUILD_IN_PROGRESS, IMAGE_NOT_READY, IMAGE_BUILDER_UNAVAILABLE, IMAGE_CONTEXT_TOO_LARGE, IMAGE_NAME_MISMATCH, IMAGE_TOO_LARGE, IMAGE_LABEL_REFUSED, IMAGE_VOLUME_REFUSED, IMAGE_APP_PORT_REQUIRED, IMAGE_APP_FIELD_NOT_APPLICABLE, IMAGE_APP_CODE_NOT_APPLICABLE, DOCKERFILE_NOT_FOUND e DOCKERFILE_REFUSED. Leia o guia e a referência da API.Melhorias
- Escolha a branch dos seus deploys pelo GitHub. Ao importar um repositório do GitHub no painel, agora há um seletor de branch, e o deploy automático segue a branch que você escolher (a rota do webhook de deploy aceita um
branchopcional). Os deploys automáticos já existentes continuam seguindomainemaster. - Links para desenvolvedores na barra lateral. CLI, extensão do VS Code, MCP, O que há de novo e Docs saíram do menu da conta e foram para a barra lateral do painel.
- Tema com um clique. A aparência no menu da conta agora é um único botão que alterna entre Sistema, Claro e Escuro.
- Excluir uma aplicação espera o resultado. A caixa de confirmação fica aberta com o progresso até a exclusão terminar, e então fecha com a aplicação já fora da lista. Se a exclusão falhar, a caixa continua aberta e mostra o motivo.
- Já autenticado. Abrir a página de login estando com a sessão iniciada leva direto ao painel.
Correções
- Importar um repositório do GitHub cujo nome contém
.gitno meio, comonome.github.io, não busca mais o repositório errado. - Restaurar um snapshot (de aplicação ou de banco de dados) ou fazer rollback para uma release a partir de um arquivo danificado agora é recusado antes de qualquer alteração (
INVALID_ZIP_STRUCTURE,400). Os arquivos da aplicação e o banco de dados em execução continuam como estavam; antes, um banco podia ficar parado e os arquivos de uma aplicação podiam ser apagados. Um snapshot de aplicação sem arquivos também é recusado da mesma forma. - Ações em aplicações, bancos de dados, snapshots, domínios e arquivos agora sempre registram a atividade no workspace ao qual o recurso pertence.
- Vincular uma aplicação ao deploy automático agora confere o repositório com a sua instalação do GitHub App. Um
repo_idque não corresponde ao repositório é recusado comVALIDATION_ERROR, um repositório fora da instalação retornaINSTALLATION_NOT_FOUND, e o GitHub indisponível retornaFETCH_ZIP_ERROR(502).