Oplossen: Error: listen EADDRINUSE: address already in use :::3000 en Vite Port 5173 is in use
Error: listen EADDRINUSE: address already in use :::3000Deze Node.js-fout betekent dat een ander proces al op poort 3000 luistert (de ::: is de
IPv6-vorm van “alle adressen”; je ziet misschien ook 127.0.0.1:3000). Vaak is het een kopie
van dezelfde server die je eerder hebt gestart en nooit hebt gestopt.
Vite gaat anders met dezelfde situatie om. Standaard toont het:
Port 5173 is in use, trying another one...en start het op de volgende vrije poort, dus de server draait wel maar niet waar je het
verwacht. Met --strictPort (of server.strictPort: true) stopt Vite in plaats daarvan, met
Error: Port 5173 is already in use.
Zelf oplossen
Section titled “Zelf oplossen”-
Zoek het proces dat de poort bezit en beëindig het. Op Windows:
Terminal window netstat -ano | findstr :3000taskkill /PID 12345 /FStap voor stap, met de PowerShell-versie, in Het proces vinden en beëindigen dat een poort gebruikt.
-
Of start je server op een andere poort, bijvoorbeeld
PORT=3001voor veel Node-servers of--port 5174voor Vite.
Hoe Moonpool helpt
Section titled “Hoe Moonpool helpt”Als je de server via Moonpool uitvoert, stel dan port in op het item. Moonpool:
- toont de app als Actief zolang er iets op die poort antwoordt, zodat een achtergebleven server die de poort bezet houdt als actief maar niet “managed by Moonpool” verschijnt;
- beëindigt bij Stoppen en Herstarten alles wat nog op
portluistert alskillModegelijk is aanport(de standaard voorweb-apps), zodat de volgende start de poort vrij vindt; - markeert twee apps die met dezelfde
portzijn geconfigureerd.
{ "id": "api", "name": "API", "group": "Web apps", "type": "web", "cwd": "C:\\code\\api", "command": "node server.js", "port": 3000, "env": { "PORT": "3000" }, "killMode": "port"}Moonpool controleert de poort niet voordat het start. Is de poort nog bezet, dan toont het commando de bovenstaande fout in het terminaltabblad van de app. Druk op Stoppen (dat de poort vrijgeeft) en daarna weer op Starten.
Geef voor Vite --strictPort mee en houd port gelijk aan de poort die je opvraagt:
npm run dev -- --port 5173 --strictPortZonder dat kan Vite doorschuiven naar 5174 terwijl Moonpool 5173 blijft bewaken, en wordt de statusstip nooit egaal.
killMode port beëindigt elk proces op de poort, dus gebruik het alleen voor poorten die niets
anders nodig heeft. Gebruik het nooit voor Docker-apps op Windows. Zie
Stoppen en herstarten.
Zie ook
Section titled “Zie ook”Moonpool is gratis software van FasterDB