Desenvolvedores

Porta já está em uso no Mac

Apenas um processo pode aguardar conexões em uma porta e endereço TCP. Um segundo servidor para com “address already in use”.

Aplica-se a: todas as versões atuais do macOS.Verificado: 29 de outubro de 2026

Sintomas

  • Um servidor de desenvolvimento para com “EADDRINUSE” ou “address already in use”.
  • O Docker não consegue publicar uma porta porque “port is already allocated”.
  • A porta estava livre antes de uma falha ou reinicialização do editor.

Possíveis causas

  • Uma cópia antiga do seu servidor. Um servidor de uma execução anterior ainda está ativo em segundo plano.
  • Outro app. Um app diferente usa a mesma porta. No macOS 12 e posteriores, o Receptor AirPlay usa as portas 5000 e 7000.
  • Um contêiner. Um contêiner em execução publica a mesma porta no Mac.

Como verificar

  1. Encontre o processo que aguarda conexões na porta. Substitua 3000 pela sua porta.

    lsof -nP -iTCP:3000 -sTCP:LISTEN

    Saída As colunas COMMAND e PID identificam o processo.

  2. Para ver processos de outros usuários, execute o mesmo comando com sudo.

    sudo lsof -nP -iTCP:3000 -sTCP:LISTEN

    Requer uma senha de administrador.

  3. Mostre mais informações sobre o processo.

    ps -p 12345 -o pid,command
  4. Procure contêineres que publicam a porta.

    docker ps

Como corrigir

  1. Se o processo for seu, interrompa-o na própria janela do Terminal com Control-C.

  2. Caso contrário, envie o sinal de término. Use o PID do processo.

    kill 12345
  3. Se ele não parar, use kill -9. O processo não poderá salvar seus dados.

  4. Se o processo pertencer ao macOS, não o interrompa. Escolha outra porta para seu servidor.

  5. Se a porta for 5000 ou 7000, leia A porta 5000 ou 7000 está em uso no Mac: Receptor AirPlay.

Com o Kilobat

  1. Liste os sockets abertos de um processo.

    kilobat destinations --pid 12345
  2. Encerre um processo pelo PID. Adicione --force apenas se ele não parar.

    kilobat quit 12345

Perguntas

Por que o lsof não mostra nada, mas a porta está em uso?

O lsof mostra apenas os processos que você pode examinar. Execute-o com sudo para ver todos.

O que fazem -n e -P?

Eles impedem o lsof de converter endereços em nomes e portas em nomes de serviços. A saída é mais rápida e mostra números.

Fontes

Verificado em 29 de outubro de 2026.