Servidor & DevOps 13 visualizações

Erro 'Address already in use' ao subir uma aplicação no VPS — como resolver

Ver no WHMCS

Erro 'Address already in use' ao subir uma aplicação no VPS — como resolver

Olá, amigo(a) GeHost! 👋

Se você está tentando subir uma aplicação no seu VPS e recebeu a mensagem "Address already in use", não se preocupe — isso é mais comum do que parece, e tem solução simples. Vamos juntos, passo a passo, entender o que está acontecendo e consertar isso com calma e certeza.

O que significa "Address already in use"?

Essa mensagem aparece quando uma porta de rede (como a porta 8080, 3000, 4000, etc.) que sua aplicação quer usar já está sendo ocupada por outro processo no servidor. É como tentar estacionar seu carro em uma vaga que já tem outro carro — a vaga está ocupada!

Dica do Sensei: Isso geralmente acontece quando você reiniciou a aplicação sem parar o processo antigo, ou quando um serviço anterior não foi fechado corretamente.

Passo a passo: como resolver no VPS

Para resolver isso, vamos identificar qual processo está usando a porta e, se necessário, encerrá-lo com segurança.

  1. Entre no seu VPS via SSH
    Use um cliente como Putty (Windows), Terminal (macOS/Linux) ou Termius. Conecte-se ao seu servidor com o usuário e senha fornecidos no painel da GeHost.
  2. Descubra qual processo está usando a porta
    Execute o comando abaixo, substituindo 8080 pela porta que sua aplicação tenta usar (ex: 3000, 4000, etc.):

    sudo lsof -i :8080

    Esse comando mostra todos os processos que estão usando a porta 8080. Você verá algo como:

    COMMAND   PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
        node    12345   user   20u  IPv4 123456      0t0  TCP *:8080 (LISTEN)

    O número após PID é o identificador do processo (no exemplo, 12345).

  3. Encerre o processo antigo (se necessário)
    Se o processo não for essencial (como um serviço de produção que você não quer interromper), você pode matá-lo com segurança:

    sudo kill 12345

    Substitua 12345 pelo PID que você encontrou.

    Se o processo não responder, force o encerramento:

    sudo kill -9 12345

    Atenção: Use kill -9 apenas quando necessário — ele força o fechamento imediato.

  4. Tente iniciar sua aplicação novamente
    Agora, execute seu comando de inicialização (ex: npm start, python app.py, etc.). Se tudo estiver certo, o erro "Address already in use" não deve mais aparecer.

Como evitar isso no futuro

Para não ter esse problema de novo, siga essas boas práticas:

  • Sempre pare a aplicação antiga antes de reiniciar (use Ctrl + C no terminal onde ela roda).
  • Use ferramentas como pm2 (para Node.js) ou systemd (para serviços em segundo plano) para gerenciar processos com mais segurança.
  • Confira sempre qual porta sua aplicação está usando e evite conflitos com serviços já em execução.

Dica do Sensei: Se você não tem certeza sobre o que está rodando no servidor, sempre use o comando ps aux | grep [nome_do_serviço] para verificar processos ativos antes de matar algo.

Se o erro persistir…

Se mesmo após seguir esses passos o erro continuar, pode haver um problema mais profundo, como um serviço do sistema ou uma aplicação que não foi encerrada corretamente. Nesse caso, recomendo:

  • Reiniciar o servidor (isso encerra todos os processos).
  • Verificar se há alguma aplicação em execução no painel do cliente (como um processo de backup ou cron).
  • Entrar em contato com o Suporte GeHost — estamos aqui para ajudar! 🌟

Se precisar de ajuda com comandos específicos ou tiver dúvidas sobre seu VPS, é só acessar o Painel do Cliente e abrir um chamado. Estamos sempre prontos para te ajudar com carinho.

Até a próxima, com muita energia positiva e código limpo! 💻✨

Precisa de Ajuda?

Nossa equipe está pronta para resolver suas dúvidas.