Como manter uma aplicação rodando permanentemente com systemd
Olá! Aqui é a Sensei da GeHost 🙂 Hoje vamos falar de um probleminha clássico: você sobe sua aplicação (um bot, uma API, um serviço Node/Python/Java etc.), ela funciona lindamente... até você fechar o terminal, o servidor reiniciar, ou dar aquela falha de energia — e a aplicação simplesmente para de responder. Ninguém percebe até o cliente reclamar. Chato, né?
A solução profissional pra isso se chama systemd, e é sobre ele que vamos conversar hoje, com calma, passo a passo.
O que é o systemd, em palavras simples
Pense no systemd como o "gerente de plantão" do servidor Linux. Ele é o responsável por ligar, monitorar e religar serviços automaticamente. Quando você diz pro systemd "cuide dessa aplicação pra mim", ele passa a garantir três coisas:
- Início automático: se o servidor reiniciar, sua aplicação sobe sozinha, sem você precisar entrar e digitar nada.
- Recuperação automática: se a aplicação travar ou cair por algum erro, o systemd pode reiniciá-la automaticamente.
- Rodar independente do terminal: a aplicação continua no ar mesmo depois que você fecha a sessão SSH — sem depender de truques como deixar uma janela aberta.
💡 Dica da Sensei: se hoje você inicia sua aplicação com algo do tiponode app.js &oupython app.py &e sai correndo do terminal, é exatamente esse hábito que o systemd vem substituir — de um jeito muito mais seguro.
Antes de começar: que tipo de acesso você tem?
O systemd é configurado no nível do sistema operacional do servidor, então ele exige um tipo de acesso mais avançado do que o painel cPanel usado na hospedagem compartilhada padrão. Antes de seguir os passos abaixo, confira com o suporte da GeHost qual é o tipo de acesso do seu plano e se ele contempla esse tipo de configuração — assim você evita perder tempo tentando algo que não se aplica ao seu ambiente.
Passo a passo para configurar seu serviço
-
Crie um arquivo de "unidade" (unit file) para o seu serviço.
É um arquivo de texto simples que descreve como sua aplicação deve ser iniciada. Ele fica, por convenção, em um diretório de configuração de serviços do sistema, com um nome do tipo
minhaaplicacao.service. -
Descreva a aplicação dentro do arquivo.
Um exemplo bem básico de conteúdo:
[Unit]
Description=Minha aplicação
After=network.target
[Service]
ExecStart=/caminho/para/sua/aplicacao
Restart=always
User=seu_usuario
[Install]
WantedBy=multi-user.targetRepare na linha Restart=always — é ela que diz ao systemd "se essa aplicação cair, suba de novo sozinha".
-
Avise o systemd que existe uma configuração nova.
Isso é feito com um comando de recarregamento das configurações do sistema.
-
Habilite o início automático no boot.
Esse passo garante que, se o servidor for reiniciado, sua aplicação suba automaticamente junto com o sistema.
-
Inicie o serviço.
A partir daqui, sua aplicação está sob os cuidados do systemd.
-
Verifique se está tudo funcionando.
Existe um comando de "status" que mostra se o serviço está ativo, há quanto tempo está no ar, e as últimas linhas de log — muito útil pra diagnosticar rapidinho se algo deu errado.
Acompanhando os logs
Uma das grandes vantagens do systemd é centralizar os registros (logs) da sua aplicação em um único lugar, através de uma ferramenta de consulta de logs do sistema. Isso facilita muito na hora de investigar um comportamento estranho, sem precisar caçar arquivo de log espalhado pelo servidor.
💡 Dica da Sensei: sempre que sua aplicação "sumir" sem explicação, o primeiro lugar a olhar são os logs do systemd — na maioria das vezes a causa do problema está registrada ali, de forma bem clara.
Resumo do que aprendemos hoje
- O systemd é o gerente que mantém sua aplicação viva, mesmo depois de reinícios ou falhas.
- Você descreve o serviço em um arquivo simples e depois habilita/inicia com alguns comandos.
- Os logs centralizados ajudam a diagnosticar problemas rapidamente.
- Esse tipo de configuração exige acesso avançado ao servidor — fale com o suporte da GeHost para confirmar se seu plano contempla isso.
Se tiver qualquer dúvida na hora de aplicar isso no seu ambiente, é só chamar o suporte da GeHost pelo painel.gehost.com.br. Estamos aqui pra ajudar você a manter tudo rodando redondinho! 🚀