NOVO 📢 Oferta de lançamento limitada: até 70% de desconto no seu primeiro mês, em todos os jogos!Ver planos

Como hospedar um bot do Discord em Deno

Hospedagem de bot do DiscordUpdated Oct 29, 20265 min read

O Deno roda TypeScript direto e carrega pacotes npm a partir dos seus imports. Para rodar um bot em Deno:

  1. Mude o tipo: na página Bot, seção Código, clique em Mudar o que roda ao lado de Runtime e escolha Deno Bot.
  2. Envie seus arquivos em Files.
  3. Confira o Arquivo de entrada (main.ts por padrão) na página Bot, seção Código.
  4. Cole o seu token na seção Discord e clique em Conectar.
  5. Clique em Iniciar e acompanhe o Console.

1. Mude o tipo para Deno Bot

Na página Bot, seção Código, clique em Mudar o que roda ao lado de Runtime e escolha Deno Bot. Em um computador, o rótulo do tipo no topo da página (por exemplo Node.js Bot) abre a mesma janela. Deixe Excluir meus arquivos atuais e começar do zero. desmarcado para manter seus arquivos. Veja Como mudar seu bot para outra linguagem ou para um bot pronto. A instalação baixa o Deno para o seu servidor.

2. Adicione o seu código

Envie seus arquivos .ts (e o deno.json, se você usa um) em Files: compacte uma pasta em zip, envie, marque o arquivo e clique em Extrair. Ou escolha Repositório Git como origem na seção Código: Como fazer deploy e atualizar seu bot do Discord pelo GitHub.

3. Defina como ele roda

  • Arquivo de entrada (card Como ele roda): main.ts por padrão, por exemplo src/bot.ts.
  • Versão do Deno (card Configurações): latest, ou um número de release como 2.5.4.

Não existe um campo Pacotes: o Deno baixa o que os seus imports indicam (npm:, jsr: ou uma URL) na primeira vez que os carrega e os guarda para os próximos inícios.

A seção Código de um bot Deno com Arquivo de entrada main.ts e o card Configurações mostrando Versão do Deno.

4. Cole o token e inicie

Na seção Discord, cole o token e clique em Conectar. Clique em Iniciar e abra o Console. Você vê a versão do Deno, por exemplo [PlayNHost] Deno 2.5.4, e depois [PlayNHost] Starting your bot. Seu bot roda com deno run -A: todas as permissões, dentro do seu próprio servidor, então você não precisa de nenhuma flag --allow. A memória dele é limitada a 80 por cento da do seu plano.

Um bot Deno mínimo com discord.js

main.ts

import { Client, Events, GatewayIntentBits } from "npm:discord.js@14";

const client = new Client({ intents: [GatewayIntentBits.Guilds] });

client.once(Events.ClientReady, (c) => {
  console.log(`Logged in as ${c.user.tag}`);
});

client.login(Deno.env.get("DISCORD_TOKEN"));

O primeiro início baixa o discord.js, então demora um pouco mais. Imprimir Logged in as muda o chip em Visão geral para Online no Discord. Você também pode usar o discordeno, uma biblioteca feita para o Deno.

Troque a versão do Deno

O Deno é baixado quando o servidor é instalado. Para rodar outro release:

  1. Na seção Código, card Configurações, defina a Versão do Deno com um número de release, por exemplo 2.5.4, e clique em Salvar.
  2. Reinicie o bot. O console mostra [PlayNHost] The Deno version changed to v2.5.4. e [PlayNHost] Downloading Deno v2.5.4, e depois inicia o seu bot com ele.

O latest mantém o release que já foi baixado; ele não se atualiza sozinho. Para ir para o release mais novo, digite o número dele, ou deixe latest e clique em Reinstalar no fim da seção Código: a instalação baixa o Deno de novo e seus arquivos continuam.

Nada acontece ao reiniciar? Seu servidor ainda tem um script de início mais antigo, que só lê a versão na instalação. Clique uma vez em Reinstalar: ele instala a versão que você definiu e o script de início mais novo.

Se o console disser que não foi possível baixar o Deno, confira se a versão que você digitou é um release real do Deno, na seção Código, em Configurações, Versão do Deno, e clique em Iniciar de novo.

Outras linhas de console

LinhaO que fazer
[PlayNHost] Your bot is not set up yet: the main file main.ts was not found.Envie seus arquivos ou coloque em Arquivo de entrada o nome e a pasta reais.
Um erro de import de um pacote npm: ou jsr:Confira o nome e a versão do pacote no import.

Chaves e senhas vão em Ambiente, e são lidas com Deno.env.get: Como definir variáveis de ambiente e segredos para o seu bot do Discord. TypeScript em outros tipos: Como rodar um bot do Discord em TypeScript.

Seu bot já está em outro lugar? Traga-o para nós

NOSSOS ÚLTIMOS ARTIGOS