Pular para o conteúdo principal
Um template de código empacota o seu código-fonte e um manifesto, vertracloud.template.yaml, que diz à plataforma o que perguntar, quanta memória reservar e como iniciar o app. Neste tutorial você cria um template de bot de Discord que faz uma pergunta (o token do bot, um segredo), roda com a RAM mínima e cria um bot funcionando em poucos cliques. Leva cerca de 20 minutos e termina com o bot respondendo ao /ping. Um template de código não usa vaga de imagem, porque a plataforma faz o build do seu código do mesmo jeito que faz o de qualquer aplicação. Se você não tem certeza de que precisa de um template de código ou de imagem, leia antes a visão geral para autores.

Antes de começar

A CLI da Vertra instalada e autenticada com uma chave de API (vertra auth login) que tenha os escopos templates:read, templates:write e templates:deploy.
Um plano que possa criar templates privados (os mesmos planos que podem criar imagens Docker, veja Planos e limites). Cada conta pode manter até 5 templates privados.
Node.js 22 ou mais recente no seu computador, só para gerar o arquivo de lock.

Passo a passo

1

Crie a pasta e o código do bot

Uma pasta de template guarda o manifesto na raiz e o código de cada serviço de código em uma subpasta. Crie esta estrutura:
O src/package.json fixa a versão da biblioteca para que toda cópia do template instale o mesmo código:
src/package.json
O src/index.js lê o token do ambiente, registra o comando /ping e encerra com uma mensagem clara quando o login falha, assim um token errado aparece no log em vez de um loop de crash silencioso:
src/index.js
Gere o arquivo de lock sem instalar nada, para que nenhuma pasta node_modules vá parar no pacote:
2

Pegue um token de bot para testar

No Discord Developer Portal, crie uma aplicação, abra Bot e use Reset Token. Copie o token em um lugar seguro: você vai digitá-lo ao usar o template, nunca em um arquivo. Depois convide o bot para um servidor de teste (OAuth2, escopos bot e applications.commands).
3

Escreva o manifesto

O manifesto responde a quatro perguntas: o que é este template, o que o usuário preenche, o que roda e o que o usuário pode alterar depois. Crie o vertracloud.template.yaml:
vertracloud.template.yaml
O que cada parte faz:
Nunca escreva o token em env. Um manifesto que traga um valor literal para uma variável com nome de segredo (*_TOKEN, *_KEY, *_SECRET, PASSWORD) é recusado com secret_in_manifest. Peça o valor com uma pergunta secret, como acima.
4

Valide o manifesto

Na pasta do template, execute:
O comando confere o manifesto com as regras da plataforma sem criar nada. Ele imprime cada achado com arquivo, linha, caminho no manifesto e código, e sai com status de falha quando há pelo menos um. Adicione --json para obter { valid, file, issues: [{ path, code, message, line }] } em scripts. Corrija todos os achados e execute de novo até passar; os mais comuns estão em Validar e testar e na referência de erros.
5

Crie o template privado

A CLI empacota a pasta src (arquivos .env*, .git e links simbólicos nunca são enviados) e cria um template privado que só você, ou o seu workspace, pode ver. Ele aparece em Templates, aba My templates, com um contador como “1 of 5 private templates”. A plataforma também procura segredos no código antes de aceitá-lo e, se encontrar algum, lista os arquivos.
6

Use o seu próprio template

Abra Templates, My templates, escolha o template e selecione Use. O assistente pede o token do bot, deixa você definir o nome do app e, se quiser, uma RAM maior. Ou pelo terminal:
O deploy roda como um job: cria o app, injeta a variável, inicia o app e espera o healthcheck. Se qualquer etapa falhar, tudo o que foi criado é desfeito. No fim, o assistente mostra as saídas.
7

Confira o bot

Abra o log do app. Um início saudável imprime Logged in as <bot name>. Slash command /ping registered. No seu servidor de teste, digite /ping: o bot responde com a latência. Se o log mostrar Login failed, o token está errado ou foi redefinido.
8

Publique uma nova versão

Altere o código ou o manifesto, aumente version (por exemplo, para 1.0.1) e execute:
Uma versão é imutável e precisa ser maior que a anterior. Os apps criados a partir do template veem “New version available” e se atualizam quando o dono clica, sempre com um snapshot de segurança antes.

Solução de problemas

Próximos passos

Última modificação em 28 de outubro de 2026