VPS

Como manter um bot Discord online na VPS Linux com systemd

Configure um serviço systemd para iniciar seu bot no boot, reiniciar após falhas e consultar os logs sem expor o token.

Equipe NeonHost14 de novembro de 20263 min de leitura
O que você vai aprender

Na VPS Linux, crie um serviço systemd para executar o bot com um usuário sem privilégios, diretório de trabalho definido e Restart=on-failure. Ative o serviço no boot e acompanhe o journal para identificar falhas. Proteja o token fora do código e teste uma reinicialização da VPS antes de considerar a configuração pronta.

Passo 1: Prepare o bot antes de automatizar

Confirme que o bot inicia manualmente e permanece conectado na versão de runtime exigida pelo projeto. Corrija erros de dependência, configuração e acesso à rede antes de criar o serviço. Crie um usuário de sistema próprio para o processo e dê acesso somente à pasta e aos arquivos necessários. Nunca coloque o token do Discord no repositório, na linha ExecStart ou em uma captura de tela.

Passo 2: Defina uma unidade systemd pequena

Em uma unidade .service, configure User para a conta do bot, WorkingDirectory para a pasta do projeto e ExecStart para o executável e arquivo principal corretos. Use Restart=on-failure para reiniciar depois de falhas do processo. Um arquivo de ambiente pode fornecer segredos, desde que suas permissões restrinjam a leitura e ele fique fora do Git. A documentação do systemd explica que a política de reinício também está sujeita a limites de tentativas; um erro repetido precisa ser resolvido no aplicativo.

  1. Crie um usuário sem privilégios e instale o bot.
  2. Crie a unidade .service com User, WorkingDirectory e ExecStart.
  3. Configure Restart=on-failure e proteja o arquivo de ambiente.
  4. Recarregue o systemd e inicie a unidade.

Passo 3: Ative no boot e examine os logs

Após criar ou alterar a unidade, execute systemctl daemon-reload. Use systemctl enable --now nome.service para ativar e iniciar; confira systemctl status nome.service. Consulte journalctl -u nome.service para encontrar o erro real. Se o processo entra em loop de falhas, interrompa, corrija o código ou configuração e só então tente novamente. Não use reinício automático para esconder um bug permanente.

Passo 4: Teste a recuperação e mantenha a segurança

Faça uma reinicialização planejada da VPS e confirme que o serviço voltou e que o bot responde a um comando de teste. Monitore uso de CPU e RAM e registre alertas para quedas. Atualize dependências com backup e procedimento de rollback. Se o token vazar, revogue-o no portal do Discord; mudar apenas o arquivo local não invalida um token exposto.

Próximo passo

Escolha uma VPS para o seu bot

Compare recursos para seu runtime, banco e volume de comandos.

Ver VPS para bots

Fontes oficiais

Confira as publicações usadas neste artigo:

Continue lendo

Mais sobre VPS

FAQ do artigo

Dúvidas sobre VPS

Não. Ele pode reiniciar um processo que falhou, mas não corrige bugs, falta de recursos, falhas externas ou indisponibilidade da VPS.
Evite. Um usuário dedicado com permissões mínimas reduz o impacto de uma falha ou de código comprometido.