> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vertracloud.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Tutoriais de deploy para todos os runtimes na Vertra Cloud

> Guias de deploy passo a passo para Node.js, Python, Go, Rust, Java, PHP, Ruby, Bun, Deno, .NET, Elixir, sites estáticos e bots de Discord, Telegram e WhatsApp.

## Guias de deploy

Aprenda a hospedar sua aplicação na Vertra Cloud com guias específicos para cada linguagem e framework. Cada tutorial cobre a estrutura do projeto, a configuração necessária e o processo completo de deploy.

> **[Node.js](https://docs.vertracloud.app/pt-br/tutorials/nodejs.md)**
>
> Aplicações Node.js com ou sem framework.

> **[Python](https://docs.vertracloud.app/pt-br/tutorials/python.md)**
>
> Scripts, bots e APIs em Python.

> **[Express.js](https://docs.vertracloud.app/pt-br/tutorials/expressjs.md)**
>
> APIs REST com Express.js.

> **[Fastify](https://docs.vertracloud.app/pt-br/tutorials/fastify.md)**
>
> APIs de alta performance com Fastify.

> **[Next.js](https://docs.vertracloud.app/pt-br/tutorials/nextjs.md)**
>
> Aplicações React com SSR e SSG.

> **[Go](https://docs.vertracloud.app/pt-br/tutorials/go.md)**
>
> APIs e serviços em Go.

> **[Deno](https://docs.vertracloud.app/pt-br/tutorials/deno.md)**
>
> Servidores Deno com deno.json.

> **[.NET (C#)](https://docs.vertracloud.app/pt-br/tutorials/dotnet.md)**
>
> Projetos ASP.NET Core e de console.

> **[Elixir](https://docs.vertracloud.app/pt-br/tutorials/elixir.md)**
>
> Aplicações Elixir e Phoenix.

> **[Sites estáticos](https://docs.vertracloud.app/pt-br/tutorials/static.md)**
>
> HTML, CSS e JavaScript puro.

> **[Bots do Discord](https://docs.vertracloud.app/pt-br/tutorials/discord-bot.md)**
>
> Bots para Discord com discord.js ou discord.py.

## Estrutura comum

Independentemente do framework escolhido, todo deploy na Vertra Cloud segue a mesma estrutura:

**1. Prepare o projeto**

Garanta que as dependências estejam declaradas (`package.json`, `requirements.txt`, `go.mod`, `deno.json`, `.csproj`, `mix.exs`...) e, no caso de sites,
que a aplicação escute na porta 80.

**2. Envie o código**

**Novo Projeto** no dashboard (ZIP ou GitHub), `vertra upload` na CLI (na primeira vez; `vertra deploy` nas atualizações seguintes), ou a
extensão do VS Code. A plataforma detecta o runtime, o arquivo principal e os comandos; revise-os antes do deploy.

**3. Verifique**

Acompanhe os logs e o status da aplicação no dashboard.

## Arquivo `vertracloud.config`

Um arquivo `vertracloud.config` opcional na raiz do projeto preenche previamente o fluxo de criação:

```ini theme={null}
MAIN=index.js
START=npm start
MEMORY=512
```

Cada chave e seus limites estão em [Configuração](https://docs.vertracloud.app/pt-br/configuration.md).

## Porta da aplicação

Aplicações web devem escutar na porta definida pela variável de ambiente `PORT`. A plataforma injeta essa variável automaticamente no container.

**Node.js**

```javascript theme={null}
const port = process.env.PORT || 80;
app.listen(port, '0.0.0.0', () => {
  console.log(`Server running on port ${port}`);
});
```

**Python**

```python theme={null}
import os
port = int(os.environ.get('PORT', 80))
app.run(host='0.0.0.0', port=port)
```

**Go**

```go theme={null}
port := os.Getenv("PORT")
if port == "" {
    port = "80"
}
http.ListenAndServe("0.0.0.0:"+port, nil)
```

> [!WARNING]
>
> Sempre use `0.0.0.0` como host, e não `localhost` ou `127.0.0.1`. Dentro do container, o bind precisa ser em todas as interfaces para que o tráfego externo chegue à aplicação.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.