Deno · 2.9.8

Hospedagem Deno 24/7

Suba uma API com Deno.serve, um bot ou um worker e deixe rodando. A plataforma reconhece o projeto pelo deno.json ou pelo deno.lock e executa o comando com deno run, em container isolado e com reinício automático quando o processo cai.

Origem

Quem desenhou o Deno

Ryan Dahl criou o Node.js em 2009 e, em 2018, apresentou o Deno na JSConf EU com uma lista do que faria diferente. Escrito em Rust sobre o V8, o Deno 1.0 saiu em maio de 2020 com TypeScript nativo e um modelo de permissões. O Deno 2, de outubro de 2024, passou a rodar projetos com package.json e módulos do npm.

Ryan Dahl

David Calhoun · CC BY 2.0

Permissões explícitas de nascença

O Deno nasceu negando por padrão leitura de arquivo, rede e variáveis de ambiente, liberados por flags --allow-*. Na Vertra o app roda com permissões completas (-A) dentro de um container isolado, então não há flag a declarar.

TypeScript de fábrica

Um único binário executa, formata, testa e verifica tipos. Não há tsconfig obrigatório, compilador à parte nem etapa de bundling para começar.

Web standards primeiro

fetch, Request, Response e streams são os mesmos da web. O que o navegador já define, o Deno usa em vez de inventar uma API própria.

O que a plataforma faz por um projeto Deno

TypeScript de fábrica e um único comando de start; a plataforma cuida do container em volta.

Detecção pelo deno.json e pelo deno.lock

Com um deno.json ou um deno.lock na raiz do projeto, a plataforma entende que é Deno e escolhe o runtime sozinha. Você só declara o MAIN e, se quiser, o START.

TypeScript sem passo de build

O Deno executa .ts e .tsx direto. Não há dist para gerar, tsc para configurar nem bundler no caminho: o arquivo do MAIN é o que roda.

Duas versões, uma linha de config

2.9.8 é a recomendada e a mais recente; 2.8.3 segue disponível. Trocar é mudar VERSION no vertracloud.config e subir de novo — não há imagem para escolher nem Dockerfile para manter.

Auto-restart com freio

Uma promessa rejeitada sem tratamento não deixa o serviço fora do ar: o processo é reiniciado sozinho, em qualquer plano. Se ele quebrar 5 vezes em 10 minutos, a plataforma marca crash loop e desliga o auto-restart por 24 horas. Saída com exit code 0 não dispara reinício.

O que as pessoas rodam em Deno aqui

Serviços pequenos e diretos, em que o runtime já traz o servidor, o TypeScript e as permissões.

APIs com Deno.serve, Hono e Oak

Publique a aplicação para receber um subdomínio em vertraweb.app com TLS. O servidor precisa escutar em 0.0.0.0 na porta declarada em PORT — quem escuta em localhost nunca vê a requisição que chega de fora.

Bots de Discord e Telegram

Um bot é um processo sem porta HTTP. O token vai nas variáveis de ambiente do painel, lidas com Deno.env.get, nunca num arquivo .env dentro do zip.

Workers e tarefas de fundo

Consumidor de fila, rotina agendada com Deno.cron, scraper: o container fica de pé 24/7 e o painel mostra a RAM real ao lado do teto do MEMORY.

Funções e serviços em TypeScript puro

Código que você já roda localmente com deno run sobe do mesmo jeito. Dependências por npm: ou jsr: continuam valendo, e o deno.lock garante a mesma resolução de uma subida para outra.

Versões de Deno disponíveis

2.9.8 é a recomendada e também a mais recente; 2.8.3 segue disponível. Sem VERSION no vertracloud.config, a aplicação sobe na recomendada.

Versãovertracloud.configStatus
2.9.8VERSION=2.9RecomendadaMais recente
2.8.3VERSION=2.8

A configuração inteira

O vertracloud.config é um arquivo INI opcional na raiz do projeto. MAIN aponta o arquivo de entrada, que a plataforma executa com deno run -A; VERSION escolhe a linha do Deno; MEMORY define o teto de RAM.

vertracloud.config
NAME=minha-api
MAIN=main.ts
VERSION=2.9
MEMORY=512

Um plano para cada fase do projeto

A memória e o armazenamento mudam por plano; a linguagem, não. Compare o que cada plano libera e escolha o que cabe no projeto agora.

Comparar planos

Também roda aqui

Mesma plataforma, mesmo deploy, outra stack.

Perguntas frequentes sobre hospedagem Deno

Permissões, versão e porta: as dúvidas mais frequentes de quem sobe Deno.

Quais versões de Deno posso usar?

2.9.8 é a recomendada e a mais recente, e 2.8.3 segue disponível. A escolha é feita pela chave VERSION no vertracloud.config; sem ela, a aplicação sobe na recomendada.

Preciso declarar as permissões do Deno (--allow-*)?

Não. A plataforma roda deno run -A, com todas as permissões liberadas dentro do container isolado. Se você sobrescrever o START, passa a ser responsável pelas flags: sem --allow-net, por exemplo, o servidor não abre a porta.

Preciso de package.json?

Não. O deno.json basta, e você pode importar de npm: e de jsr:. Se o projeto já tem package.json por compatibilidade com Node, ele continua funcionando.

A API sobe, mas o subdomínio não responde.

Duas causas. O servidor precisa escutar em 0.0.0.0 e na porta declarada em PORT; e a aplicação precisa estar publicada na web, o que exige 512 MB de RAM e está disponível a partir do plano Pro.

Como passo segredos ao app?

Pela aba de variáveis de ambiente do painel: elas são injetadas no container na inicialização e ficam criptografadas em repouso. A plataforma não lê arquivo .env; leia os valores com Deno.env.get.

Suba seu projeto Deno hoje

Crie a conta, envie um zip com o deno.json e o seu arquivo de entrada, ou conecte o repositório do GitHub, e acompanhe o início do processo no terminal do painel.

Criar conta