- Documentação
- Tecnologias
- Deno
Deno
A Guara Cloud suporta totalmente aplicacoes Deno, incluindo frameworks como Fresh, Oak, Hono e qualquer outro projeto baseado em Deno. O runtime seguro por padrao do Deno e seu suporte nativo a TypeScript o tornam uma otima escolha para aplicacoes web modernas.
Versoes suportadas
As seguintes versoes do Deno sao detectadas automaticamente pelo Buildpack:
- Deno 1.46
- Deno 2.0
- Deno 2.1
A versao e determinada pelo arquivo de configuracao deno.json ou deno.jsonc. Se nenhuma versao for especificada, a ultima versao estavel sera usada.
{
"lock": true,
"tasks": {
"start": "deno run --allow-net --allow-read --allow-env main.ts"
}
}
Deploy com Dockerfile
Para controle total sobre o build, inclua um Dockerfile na raiz do seu repositorio.
Deploy com Buildpack
Se o seu repositorio nao contiver um Dockerfile, a Guara Cloud detecta automaticamente seu projeto Deno pela presenca de um arquivo deno.json ou deno.jsonc no diretorio raiz.
O Buildpack vai:
- Detectar a versao do Deno pela sua configuracao
- Fazer cache das dependencias definidas no import map ou
deno.json - Compilar sua aplicacao se uma task
buildestiver definida - Iniciar sua aplicacao usando a task
start
Certifique-se de que seu deno.json inclua uma task start:
{
"tasks": {
"start": "deno run --allow-net --allow-read --allow-env main.ts"
}
}
Configuracao de porta
Sua aplicacao deve escutar na porta configurada nas configuracoes do servico. O padrao e 3000, mas voce pode altera-lo a qualquer momento para corresponder a sua aplicacao.
const port = Number(Deno.env.get("PORT")) || 3000;
Deno.serve({ port }, handler);
Estrutura de projeto exemplo
my-deno-app/
deno.json
deno.lock
main.ts
routes/
index.ts
middleware/
auth.ts
Dockerfile # opcional — omita para usar Buildpack
Variaveis de ambiente
Estas variaveis de ambiente sao comumente usadas em deploys Deno:
| Variavel | Valor recomendado | Descricao |
|---|---|---|
PORT | Definido pela plataforma | A porta na qual sua aplicacao deve escutar |
DENO_ENV | production | Indica o ambiente de execucao |
DENO_DIR | /app/.cache/deno | Diretorio para o cache de modulos do Deno |